MergedFB requires displays to be ordered from larger to smaller

Bug #24790 reported by Francis Bond
8
Affects Status Importance Assigned to Milestone
xserver-xorg-video-ati (Ubuntu)
Invalid
Medium
Unassigned

Bug Description

G'day,

using the xserver-xorg-driver-ati radeon driver (6.8.2-77) and
MergedFB, I could only get the following MetaModes to work if
the displays were ordered largest to smallest.

That is, for these metamodes (1024x768 1024x768-1024x768 1024x768-1280x1024),
X would only create all three if the displays were defined in this order:

Section "Screen"
 Identifier "MergedFB Screen"
 Device "Radeon MergedFB"
 Monitor "Laptop"
 DefaultDepth 24
 ### 1024x768-1280x1024 (+ 1024 1280) 2304
 SubSection "Display"
  Modes "1280x1024"
  Virtual 2304 1024
 EndSubSection
 ### 1024x768-1024x768
 SubSection "Display"
  Modes "1024x768"
  Virtual 2048 768
 EndSubSection
 ### 1024x768
 SubSection "Display"
  Modes "1024x768"
  Virtual 1024 768
 EndSubSection
#
# Had to tweak /etc/gdm/Init/Default to get 1024x768 as the default
# xrandr -s 0
#
EndSection

If I order them with the smallest one first (which is the one I
would like to be the default), then the other two are not created.

I attach my working xorg.conf, and would be happy to send more information
if it was useful.

Francis Bond

# /etc/X11/xorg.conf (xorg X Window System server configuration file)
#
# This file was generated by dexconf, the Debian X Configuration tool, using
# values from the debconf database.
#
# Edit this file with caution, and see the /etc/X11/xorg.conf manual page.
# (Type "man /etc/X11/xorg.conf" at the shell prompt.)
#
# This file is automatically updated on xserver-xorg package upgrades *only*
# if it has not been modified since the last upgrade of the xserver-xorg
# package.
#
# If you have edited this file but would like it to be automatically updated
# again, run the following commands:
#
# cp /etc/X11/xorg.conf /etc/X11/xorg.conf.custom
# sudo sh -c 'md5sum /etc/X11/xorg.conf >/var/lib/xfree86/xorg.conf.md5sum'
# sudo dpkg-reconfigure xserver-xorg

Section "Files"
 FontPath "unix/:7100" # local font server
 # if the local font server has problems, we can fall back on these
 FontPath "/usr/lib/X11/fonts/misc"
# FontPath "/usr/lib/X11/fonts/cyrillic"
 FontPath "/usr/lib/X11/fonts/100dpi/:unscaled"
 FontPath "/usr/lib/X11/fonts/75dpi/:unscaled"
 FontPath "/usr/lib/X11/fonts/Type1"
 FontPath "/usr/lib/X11/fonts/CID"
 FontPath "/usr/lib/X11/fonts/100dpi"
 FontPath "/usr/lib/X11/fonts/75dpi"
        # paths to defoma fonts
 FontPath "/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType"
 FontPath "/var/lib/defoma/x-ttcidfont-conf.d/dirs/CID"
EndSection

Section "Module"
 Load "bitmap"
 Load "dbe"
 Load "ddc"
 Load "dri"
 Load "extmod"
 Load "freetype"
 Load "glx" # OpenGL X protocol interface
 Load "int10"
 Load "record"
 Load "type1"
 Load "vbe"
 Load "v4l" # video4linux
EndSection

Section "InputDevice"
 Identifier "Generic Keyboard"
 Driver "keyboard"
 Option "CoreKeyboard"
 Option "XkbRules" "xorg"
 Option "XkbModel" "pc104"
 Option "XkbLayout" "jp"
 Option "XkbOptions" "jp106"
EndSection

Section "InputDevice"
 Identifier "Configured Mouse"
 Driver "mouse"
 Option "CorePointer"
 Option "Device" "/dev/input/mice"
 Option "Protocol" "ImPS/2"
 Option "Emulate3Buttons" "true"
 Option "ZAxisMapping" "4 5"
EndSection
Section "InputDevice"
        Identifier "Synaptics Touchpad"
        Driver "synaptics"
        Option "SendCoreEvents" "true"
        Option "Device" "/dev/psaux"
        Option "Protocol" "auto-dev"
        Option "HorizScrollDelta" "0"
EndSection

Section "Device"
 Identifier "Radeon MergedFB"
 VendorName "ATI Technologies Inc"
 BoardName "Radeon Mobility 9000 (M6 LY)"
 Driver "radeon"
 BusID "PCI:1:0:0"
 Option "MonitorLayout" "LVDS,CRT"
 Option "MergedFB" "True"
 Option "MetaModes" "1024x768 1024x768-1024x768 1024x768-1280x1024"
 Option "CRT2Position" "RightOf"
EndSection

Section "Monitor"
 Identifier "Laptop"
 VendorName "IBM"
 ModelName "X31 Screen"
 DisplaySize 305 228
 Option "DPMS"
EndSection

Section "Monitor"
 Identifier "MonExt"
 VendorName "IBM"
 ModelName "IBM 17inch"
 DisplaySize 340 270
 Option "DPMS"
EndSection

Section "Screen"
 Identifier "MergedFB Screen"
 Device "Radeon MergedFB"
 Monitor "Laptop"
 DefaultDepth 24
 ### 1024x768-1280x1024 (+ 1024 1280) 2304
 SubSection "Display"
  Modes "1280x1024"
  Virtual 2304 1024
 EndSubSection
 ### 1024x768-1024x768
 SubSection "Display"
  Modes "1024x768"
  Virtual 2048 768
 EndSubSection
 ### 1024x768
 SubSection "Display"
  Modes "1024x768"
  Virtual 1024 768
 EndSubSection
#
# Had to tweak /etc/gdm/Init/Default to get 1024x768 as the default
# xrandr -s 0
#
EndSection

# Section "Screen"
# ### Laptop Screen ("1024x768")
# Identifier "ScreenInt"
# Device "CardInt"
# Monitor "MonInt"
# DefaultDepth 24
# SubSection "Display"
# Depth 24
# Modes "1024x768" "800x600"
# EndSubSection
# EndSection

# Section "Screen"
# ### External Screen
# Identifier "ScreenExt"
# Device "CardExt"
# Monitor "MonExt"
# DefaultDepth 24
# SubSection "Display"
# Depth 24
# Modes "1280x1024" "1024x768" "800x600"
# EndSubSection
# EndSection

# xorg.conf occasionally going into dual head mode with an
# external
# LCD monitor.
#
# Section "ServerLayout"
# Identifier "DualHead"
# Screen 0 "ScreenInt"
# Screen 1 "ScreenExt" RightOf "ScreenInt"
# InputDevice "Generic Keyboard"
# InputDevice "Configured Mouse"
# # InputDevice "Mouse0" "CorePointer"
# # InputDevice "Keyboard0" "CoreKeyboard"
# Option "Xinerama" "on"
# Option "Clone" "off"
# EndSection

Section "ServerLayout"
 Identifier "Default Layout"
 Screen "MergedFB Screen"
 InputDevice "Configured Mouse"
 InputDevice "Generic Keyboard"
EndSection

Section "DRI"
 Mode 0666
EndSection

Tags: ati xorg
Revision history for this message
Daniel Stone (daniels) wrote :

the Xorg.0.log would be great

what happens when they aren't ordered from largest to smallest? do the displays
just not power on? does X error out? et al

Revision history for this message
Francis Bond (bond) wrote :

Created an attachment (id=4858)
.tgz of the xorg.confs, Xorg.0.logs and xrandr output

G'day,

thanks for looking into this.

If the screens are in descending order (largest to smallest), then three
virtual displays are created:
$ xrandr
 SZ: Pixels Physical Refresh
*0 1024 x 768 ( 306mm x 228mm ) *0
 1 2048 x 768 ( 306mm x 228mm ) 0
 2 2304 x 1024 ( 306mm x 228mm ) 0
Current rotation - normal
Current reflection - none
Rotations possible - normal
Reflections possible - none

This is basically what I want, except I would prefer screen 2 to be the
default, which seems to be controlled by the order the screens are listed in
the display section.

If the screens are given in ascending order, then only the smallest is created:

$ xrandr
 SZ: Pixels Physical Refresh
*0 1024 x 768 ( 306mm x 229mm ) *0
Current rotation - normal
Current reflection - none
Rotations possible - normal
Reflections possible - none

The two larger virtual screens are not created.

I am attaching a tarred gzipped file of the xorg.confs, Xorg.0.logs and the
output of xrandr for the ascending and descending cases.

Daniel Stone (daniels)
Changed in xserver-xorg-driver-ati:
assignee: daniels → nobody
Revision history for this message
Timo Jyrinki (timo-jyrinki) wrote :

Does this work for you in eg. Ubuntu 6.10?

Revision history for this message
Timo Aaltonen (tjaalton) wrote :

No reply in several months, and the driver in 7.10 won't have support for mergedfb anyway (randr-1.2 supersedes it)

Changed in xserver-xorg-video-ati:
status: Incomplete → Invalid
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.