[Libdlo] Multiple DisplayLink devices with fbdev
Mike Jager
mike at mikej.net.nz
Sat Nov 6 15:51:56 PDT 2010
Hi guys,
After upgrading to Ubuntu 10.10, I started running into issues where
opening KeePassX would result in Xorg crashing. Since it seems that the
generally recommended thing to do these days is migrate from the
DisplayLink Xorg driver to the fbdev one, I thought I'd give that a go.
I upgraded to the latest udlfb driver from
http://git.plugable.com/webdav/udlfb, which continued to operate fine
with the DisplayLink Xorg driver I was using (but still resulted in
KeePassX crashing Xorg).
After that, I built the fbdev Xorg driver from
http://git.plugable.com/webdav/xf86-video-fbdev, and updated my
xorg.conf to use it in favour of the DisplayLink driver:
Section "Files"
ModulePath "/usr/local/lib/xorg/modules"
ModulePath "/usr/lib/xorg/modules"
EndSection
Section "Device"
Identifier "dl0"
Driver "fbdev"
Option "fbdev" "/dev/fbhp0"
Option "ReportDamage" "true"
EndSection
Section "Device"
Identifier "dl1"
Driver "fbdev"
Option "fbdev" "/dev/fbhp1"
Option "ReportDamage" "true"
EndSection
Section "Monitor"
Identifier "philips0"
EndSection
Section "Monitor"
Identifier "philips1"
EndSection
Section "Screen"
Identifier "screen0"
Device "dl0"
Monitor "philips0"
SubSection "Display"
Depth 24
Modes "1280x1024"
EndSubSection
EndSection
Section "Screen"
Identifier "screen1"
Device "dl1"
Monitor "philips1"
SubSection "Display"
Depth 24
Modes "1280x1024"
EndSubSection
EndSection
Section "ServerLayout"
Identifier "multihead"
Screen 0 "screen0" 0 0
Screen 1 "screen1" RightOf "screen0"
Option "Xinerama" "on"
Option "Clone" "off"
EndSection
However, when starting Xorg, only the first DisplayLink device (dl0 -
left screen) gets used. The gdm login box shows on the left screen, but
the right screen doesn't get used at all. If I configure dl0 to use
/dev/fbhp1 instead of /dev/fbhp0, then the right screen displays the gdm
login box and it is then the left screen which doesn't get used.
My Xorg log reveals that Xorg isn't even attempting to use the second
device, even though it discovers it in the ServerLayout (full log attached):
[216301.632] (==) Using config file: "/etc/X11/xorg.conf"
[216301.632] (==) Using system config directory "/usr/share/X11/xorg.conf.d"
[216301.632] (==) ServerLayout "multihead"
[216301.632] (**) |-->Screen "screen0" (0)
[216301.632] (**) | |-->Monitor "philips0"
[216301.632] (**) | |-->Device "dl0"
[216301.632] (**) |-->Screen "screen1" (1)
[216301.632] (**) | |-->Monitor "philips1"
[216301.632] (**) | |-->Device "dl1"
[216301.632] (**) Option "Xinerama" "on"
[216301.632] (==) Automatically adding devices
[216301.632] (==) Automatically enabling devices
[216301.632] (**) Xinerama: enabled
...
[216301.636] (II) LoadModule: "fbdev"
[216301.636] (II) Loading /usr/local/lib/xorg/modules/drivers/fbdev_drv.so
[216301.636] (II) Module fbdev: vendor="X.Org Foundation"
[216301.636] compiled for 1.9.0, module version = 0.4.2
[216301.636] ABI class: X.Org Video Driver, version 8.0
[216301.636] (II) FBDEV: driver for framebuffer: fbdev
[216301.636] (--) using VT number 8
[216301.638] (II) Loading sub module "fbdevhw"
[216301.638] (II) LoadModule: "fbdevhw"
[216301.639] (II) Loading /usr/lib/xorg/modules/libfbdevhw.so
[216301.639] (II) Module fbdevhw: vendor="X.Org Foundation"
[216301.639] compiled for 1.9.0, module version = 0.0.2
[216301.639] ABI class: X.Org Video Driver, version 8.0
[216301.639] (**) FBDEV(0): claimed PCI slot 0 at 0:2:0
[216301.639] (II) FBDEV(0): using /dev/fbhp0
[216301.639] (II) FBDEV(0): Creating default Display subsection in
Screen section
"screen0" for depth/fbbpp 16/16
[216301.639] (==) FBDEV(0): Depth 16, (==) framebuffer bpp 16
[216301.639] (==) FBDEV(0): RGB weight 565
[216301.639] (==) FBDEV(0): Default visual is TrueColor
[216301.639] (==) FBDEV(0): Using gamma correction (1.0, 1.0, 1.0)
[216301.639] (II) FBDEV(0): hardware: udlfb (video memory: 2560kB)
[216301.639] (**) FBDEV(0): Option "fbdev" "/dev/fbhp0"
[216301.639] (**) FBDEV(0): Option "ReportDamage" "true"
[216301.639] (**) FBDEV(0): Damage reporting enabled. Disabling shadow
framebuffer
[216301.639] (II) FBDEV(0): checking modes against framebuffer device...
[216301.639] (II) FBDEV(0): checking modes against monitor...
[216301.639] (--) FBDEV(0): Virtual size is 1280x1024 (pitch 1280)
[216301.639] (**) FBDEV(0): Built-in mode "current": 108.0 MHz, 64.0
kHz, 60.0 Hz
[216301.639] (II) FBDEV(0): Modeline "current"x0.0 108.00 1280 1328
1440 1688 1024 1025 1028 1066 +hsync +vsync -csync (64.0 kHz)
[216301.639] (==) FBDEV(0): DPI set to (96, 96)
[216301.639] (II) Loading sub module "fb"
[216301.639] (II) LoadModule: "fb"
[216301.639] (II) Loading /usr/lib/xorg/modules/libfb.so
[216301.639] (II) Module fb: vendor="X.Org Foundation"
[216301.639] compiled for 1.9.0, module version = 1.0.0
[216301.639] ABI class: X.Org ANSI C Emulation, version 0.4
[216301.693] (==) FBDEV(0): Backing store disabled
[216301.693] (==) FBDEV(0): DPMS enabled
[216301.693] (==) RandR enabled
[216301.693] (II) Initializing built-in extension Generic Event Extension
[216301.693] (II) Initializing built-in extension SHAPE
[216301.693] (II) Initializing built-in extension MIT-SHM
[216301.693] (II) Initializing built-in extension XInputExtension
[216301.693] (II) Initializing built-in extension XTEST
[216301.693] (II) Initializing built-in extension BIG-REQUESTS
[216301.693] (II) Initializing built-in extension SYNC
[216301.693] (II) Initializing built-in extension XKEYBOARD
[216301.693] (II) Initializing built-in extension XC-MISC
[216301.694] (II) Initializing built-in extension SECURITY
[216301.694] (II) Initializing built-in extension XINERAMA
[216301.694] (II) Initializing built-in extension XFIXES
[216301.694] (II) Initializing built-in extension RENDER
[216301.694] (II) Initializing built-in extension RANDR
[216301.694] (II) Initializing built-in extension COMPOSITE
[216301.694] (II) Initializing built-in extension DAMAGE
[216301.694] (II) Initializing built-in extension GESTURE
[216301.704] (II) AIGLX: Screen 0 is not DRI2 capable
[216301.704] (II) AIGLX: Screen 0 is not DRI capable
[216301.706] (II) AIGLX: Loaded and initialized /usr/lib/dri/swrast_dri.so
[216301.706] (II) GLX: Initialized DRISWRAST GL provider for screen 0
[216301.720] (II) XKB: reuse xkmfile
/var/lib/xkb/server-B20D7FC79C7F597315E3E501AEF10E0D866E8E92.xkm
[216301.727] (II) config/udev: Adding input device Power Button
(/dev/input/event3)
[216301.727] (**) Power Button: Applying InputClass "evdev keyboard
catchall"
[216301.727] (II) LoadModule: "evdev"
[216301.728] (II) Loading /usr/lib/xorg/modules/input/evdev_drv.so
[216301.728] (II) Module evdev: vendor="X.Org Foundation"
[216301.728] compiled for 1.9.0, module version = 2.3.2
[216301.728] Module class: X.Org XInput Driver
[216301.728] ABI class: X.Org XInput driver, version 11.0
... (continues to load remaining input devices)
I'm hoping I've just missed something that needs to be in my
configuration for multiple fbdev devices. The fbdev driver, although
only allowing one monitor to operate, solves my problem with KeePassX,
so I'd like really like to continue with fbdev and get my other monitor
back!
Has anyone got any hints here?
Cheers
-Mike
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: Xorg.0.log
URL: <http://lists.freedesktop.org/archives/libdlo/attachments/20101107/d5cec598/attachment.ksh>
More information about the Libdlo
mailing list