I'm running a AMD64 Gentoo System, Kernel 2.6.20 (Gentoo Sources). Card is a PCIE X800GT dual DVI out (R423). I'm trying to run MergedFB to have an extended desktop across two Monitors. I believe the config is good because both monitors seem to be successfully detected in my Xorg log. But when x is started (KDE) the second screen never appears to initialize. Looking at the pager the desktop is extended as onto the other display and I can scroll my mouse off the edge of the screen as though the other monitor is active. In doing some research before opening this bug I came across bug #1666 which seams to be similar but when I use 'xset dpms force off' the primary monitor goes into standby mode similar to the secondary monitor but when I move my mouse only the primary display comes back.
Created attachment 8771 [details] Xorg.0.log Xorg log of start up.
Created attachment 8772 [details] xorg.conf xorg.conf file
Are you using DVI on both ports? If so, this configuration is not supported at the moment. The radeon driver does not yet have support for external TMDS transmitters that are are not set up by the bios. There is work being done on this, but nothing is working as of yet.
Yup, Both are DVI. Thanks for the Heads up. Is there a bug tracking this that I can add myself as a cc?
Dave Airlie has experimental sil-164 support in his ati driver tree on the sil164-support branch. What TDMS chip does your board use (should be near the second DVI port).
Nope, :( mine is a: Silicon Image sil1162u 0443 v44651.1-1 1.0 http://www.siliconimage.com/products/product.aspx?id=5 More than happy to test w/ my machien if someone is working on it.
(In reply to comment #6) > Nope, :( > mine is a: > > Silicon Image > sil1162u 0443 > v44651.1-1 1.0 > I have an 1162 as well. IIRC, they are register compatible with the 164.
Is there somewhere I could grab Dave's code. I'm more than happy to try it out and provide feedback.
Dave's code is in his git repo (http://gitweb.freedesktop.org/?p=users/airlied/xf86-video-ati.git;a=summary) on the sil164-support branch. I've also ported it to ati git HEAD, and the patch is available here: http://www.botchco.com/alex/xorg/dualdvi.diff
(In reply to comment #9) > Dave's code is in his git repo > (http://gitweb.freedesktop.org/?p=users/airlied/xf86-video-ati.git;a=summary) > on the sil164-support branch. I've also ported it to ati git HEAD, and the > patch is available here: > http://www.botchco.com/alex/xorg/dualdvi.diff > Wondering if I'm using the correct tool to apply the patch or not because when I try to apply the patch I get the following error: #patch -p0 < var/tmp/portage/x11-drivers/xf86-video-ati-6.6.3/distdir/dualdvi.diff can't find file to patch at input line 6 Perhaps you used the wrong -p or --strip option? The text leading up to this was: -------------------------- |diff --git a/Makefile.am b/Makefile.am |diff --git a/configure.ac b/configure.ac |index 16b93e1..c36c8b0 100644 |--- a/configure.ac |+++ b/configure.ac -------------------------- File to patch: The error continues with each new file section of the diff.
(In reply to comment #10) > (In reply to comment #9) > > Dave's code is in his git repo > > (http://gitweb.freedesktop.org/?p=users/airlied/xf86-video-ati.git;a=summary) > > on the sil164-support branch. I've also ported it to ati git HEAD, and the > > patch is available here: > > http://www.botchco.com/alex/xorg/dualdvi.diff > > > Wondering if I'm using the correct tool to apply the patch or not because when > I try to apply the patch I get the following error: > #patch -p0 < > var/tmp/portage/x11-drivers/xf86-video-ati-6.6.3/distdir/dualdvi.diff > > can't find file to patch at input line 6 > Perhaps you used the wrong -p or --strip option? > The text leading up to this was: > -------------------------- > |diff --git a/Makefile.am b/Makefile.am > |diff --git a/configure.ac b/configure.ac > |index 16b93e1..c36c8b0 100644 > |--- a/configure.ac > |+++ b/configure.ac > -------------------------- > File to patch: > > The error continues with each new file section of the diff. > OK, should have done a little more research on my own before posting. I have the original problem fixed by using -p1 instead of -p0, but I now get the following: PATCH COMMAND: patch -p1 -g0 -E --no-backup-if-mismatch < /var/tmp/portage/x11-drivers/xf86-video-ati-6.6.3/distdir/dualdvi.diff ======================== patching file configure.ac Hunk #1 succeeded at 232 (offset 14 lines). patching file src/Makefile.am patching file src/radeon.h Hunk #1 succeeded at 797 with fuzz 2 (offset -22 lines). can't find file to patch at input line 43 Perhaps you used the wrong -p or --strip option? The text leading up to this was: -------------------------- |diff --git a/src/radeon_display.c b/src/radeon_display.c |index d661c17..381b3b2 100644 |--- a/src/radeon_display.c |+++ b/src/radeon_display.c -------------------------- No file to patch. Skipping patch. 7 out of 7 hunks ignored patching file src/radeon_driver.c Hunk #1 succeeded at 5733 (offset 1960 lines). Hunk #2 FAILED at 7341. Hunk #3 succeeded at 7436 (offset 1963 lines). Hunk #4 FAILED at 7620. Hunk #5 FAILED at 7645. Hunk #6 FAILED at 8283. Hunk #7 succeeded at 8758 (offset 2275 lines). 4 out of 7 hunks FAILED -- saving rejects to file src/radeon_driver.c.rej patching file src/radeon_probe.h Hunk #1 succeeded at 40 (offset 1 line). Hunk #2 FAILED at 106. Hunk #3 FAILED at 136. 2 out of 3 hunks FAILED -- saving rejects to file src/radeon_probe.h.rej patching file src/radeon_reg.h Hunk #1 succeeded at 736 (offset -20 lines). Hunk #2 succeeded at 832 (offset -20 lines). Hunk #3 succeeded at 1236 (offset -20 lines).
(In reply to comment #11) <snip> > OK, should have done a little more research on my own before posting. I have > the original problem fixed by using -p1 instead of -p0, but I now get the > following: > > PATCH COMMAND: patch -p1 -g0 -E --no-backup-if-mismatch < > /var/tmp/portage/x11-drivers/xf86-video-ati-6.6.3/distdir/dualdvi.diff > > ======================== > patching file configure.ac > Hunk #1 succeeded at 232 (offset 14 lines). > patching file src/Makefile.am > patching file src/radeon.h > Hunk #1 succeeded at 797 with fuzz 2 (offset -22 lines). > can't find file to patch at input line 43 > Perhaps you used the wrong -p or --strip option? > The text leading up to this was: > -------------------------- > |diff --git a/src/radeon_display.c b/src/radeon_display.c > |index d661c17..381b3b2 100644 > |--- a/src/radeon_display.c > |+++ b/src/radeon_display.c > -------------------------- > No file to patch. Skipping patch. > 7 out of 7 hunks ignored > patching file src/radeon_driver.c > Hunk #1 succeeded at 5733 (offset 1960 lines). > Hunk #2 FAILED at 7341. > Hunk #3 succeeded at 7436 (offset 1963 lines). > Hunk #4 FAILED at 7620. > Hunk #5 FAILED at 7645. > Hunk #6 FAILED at 8283. > Hunk #7 succeeded at 8758 (offset 2275 lines). > 4 out of 7 hunks FAILED -- saving rejects to file src/radeon_driver.c.rej > patching file src/radeon_probe.h > Hunk #1 succeeded at 40 (offset 1 line). > Hunk #2 FAILED at 106. > Hunk #3 FAILED at 136. > 2 out of 3 hunks FAILED -- saving rejects to file src/radeon_probe.h.rej > patching file src/radeon_reg.h > Hunk #1 succeeded at 736 (offset -20 lines). > Hunk #2 succeeded at 832 (offset -20 lines). > Hunk #3 succeeded at 1236 (offset -20 lines). > The patch is against ati git head (http://gitweb.freedesktop.org/?p=xorg/driver/xf86-video-ati.git;a=summary), it won't apply to 6.6.3. You'll need to grab that or use airlied's tree.
(In reply to comment #12) <snip> > > The patch is against ati git head > (http://gitweb.freedesktop.org/?p=xorg/driver/xf86-video-ati.git;a=summary), it > won't apply to 6.6.3. You'll need to grab that or use airlied's tree. > Ok, I pulled down the head. And applied the Patch successfully but it looks like the patch doesn't include the contents of [base_dir]/src/sil164 jsuhre@hammer ~/tmp/xf86-video-ati-dev $ patch -p1 < ~/dls/dualdvi.diff patching file configure.ac patching file src/Makefile.am patching file src/radeon.h patching file src/radeon_display.c patching file src/radeon_driver.c patching file src/radeon_probe.h patching file src/radeon_reg.h Hunk #2 succeeded at 865 (offset 13 lines). Hunk #3 succeeded at 1269 (offset 13 lines). jsuhre@hammer ~/tmp/xf86-video-ati-dev $ ./autogen.sh autoreconf-2.61: Entering directory `.' autoreconf-2.61: configure.ac: not using Gettext autoreconf-2.61: running: aclocal /usr/share/aclocal/ao.m4:9: warning: underquoted definition of XIPH_PATH_AO /usr/share/aclocal/ao.m4:9: run info '(automake)Extending aclocal' /usr/share/aclocal/ao.m4:9: or see http://sources.redhat.com/automake/automake.html#Extending-aclocal autoreconf-2.61: configure.ac: tracing autoreconf-2.61: running: libtoolize --copy /usr/share/aclocal/ao.m4:9: warning: underquoted definition of XIPH_PATH_AO /usr/share/aclocal/ao.m4:9: run info '(automake)Extending aclocal' /usr/share/aclocal/ao.m4:9: or see http://sources.redhat.com/automake/automake.html#Extending-aclocal autoreconf-2.61: running: /usr/bin/autoconf-2.61 autoreconf-2.61: running: /usr/bin/autoheader-2.61 autoreconf-2.61: running: automake --add-missing --copy --no-force configure.ac:33: installing `./missing' configure.ac:33: installing `./install-sh' src/Makefile.am: installing `./depcomp' src/Makefile.am:22: required directory src/sil164 does not exist configure.ac:223: required file `src/sil164/Makefile.in' not found autoreconf-2.61: automake failed with exit status: 1 jsuhre@hammer ~/tmp/xf86-video-ati-dev $
(In reply to comment #13) > (In reply to comment #12) > <snip> > > > > The patch is against ati git head > > (http://gitweb.freedesktop.org/?p=xorg/driver/xf86-video-ati.git;a=summary), it > > won't apply to 6.6.3. You'll need to grab that or use airlied's tree. > > > > Ok, I pulled down the head. And applied the Patch successfully but it looks > like the patch doesn't include the contents of [base_dir]/src/sil164 > whoops. just grab those from airlied's git tree. I just copied over.
DLed the SIL code from dave's repository and merged it with the head of the original repository. I also had to DL the src/i2c_vid.h file. After that I was able to get this far in the compilation, but I'm not sure what to do with the missing PACKAGE_VERSION_* definitions. The make file define PACKAGE_VERSION to be 6.6.99, should I just hard code that value in the ativersion.h file for now? make all-recursive make[1]: Entering directory `/home/jaylward/workspace/ati-driver/xf86-video-ati' Making all in src make[2]: Entering directory `/home/jaylward/workspace/ati-driver/xf86-video-ati/src' Making all in sil164 make[3]: Entering directory `/home/jaylward/workspace/ati-driver/xf86-video-ati/src/sil164' make[3]: Nothing to be done for `all'. make[3]: Leaving directory `/home/jaylward/workspace/ati-driver/xf86-video-ati/src/sil164' make[3]: Entering directory `/home/jaylward/workspace/ati-driver/xf86-video-ati/src' /bin/sh ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I.. -DXFree86Server -DIN_MODULE -DXFree86Module -DXFree86LOADER -I/usr/include/xorg -I/usr/include/drm -I/usr/include/X11/dri -g -O2 -MT ati.lo -MD -MP -MF .deps/ati.Tpo -c -o ati.lo ati.c gcc -DHAVE_CONFIG_H -I. -I.. -DXFree86Server -DIN_MODULE -DXFree86Module -DXFree86LOADER -I/usr/include/xorg -I/usr/include/drm -I/usr/include/X11/dri -g -O2 -MT ati.lo -MD -MP -MF .deps/ati.Tpo -c ati.c -fPIC -DPIC -o .libs/ati.o ati.c:68: error: 'PACKAGE_VERSION_MAJOR' undeclared here (not in a function) ati.c:68: error: 'PACKAGE_VERSION_MINOR' undeclared here (not in a function) ati.c:68: error: 'PACKAGE_VERSION_PATCHLEVEL' undeclared here (not in a function) make[3]: *** [ati.lo] Error 1 make[3]: Leaving directory `/home/jaylward/workspace/ati-driver/xf86-video-ati/src' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/home/jaylward/workspace/ati-driver/xf86-video-ati/src' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/home/jaylward/workspace/ati-driver/xf86-video-ati' make: *** [all] Error 2
(In reply to comment #15) > DLed the SIL code from dave's repository and merged it with the head of the > original repository. I also had to DL the src/i2c_vid.h file. After that I was > able to get this far in the compilation, but I'm not sure what to do with the > missing PACKAGE_VERSION_* definitions. > > The make file define PACKAGE_VERSION to be 6.6.99, should I just hard code that > value in the ativersion.h file for now? > you need the latest xorg macros package (http://gitweb.freedesktop.org/?p=xorg/util/macros.git;a=summary).
Created attachment 8793 [details] Xorg.0.log Startup w/ xf86-video-ati driver head patched for sil164
Ok tried the new driver. Xorg bombed out w/ a Sig 11. I attached the entire log. Below is the snip-it w/ the backtrace. When I tried to startx w/ the new driver it did cause the second display to try and initialize. Backtrace: 0: X(xf86SigHandler+0x71) [0x48bec1] 1: /lib/libc.so.6 [0x2acbb68ec940] 2: /usr/lib64/xorg/modules/drivers/radeon_drv.so(RADEONTMDSPowerSet+0x29) [0x2acbb7be0c09] 3: /usr/lib64/xorg/modules/drivers/radeon_drv.so [0x2acbb7bd074e] 4: /usr/lib64/xorg/modules/drivers/radeon_drv.so [0x2acbb7bd0a49] 5: /usr/lib64/xorg/modules/drivers/radeon_drv.so(RADEONScreenInit+0x150d) [0x2acbb7bd2b0d] 6: X(AddScreen+0x236) [0x430666] 7: X(InitOutput+0x267) [0x45f017] 8: X(main+0x26f) [0x430e5f] 9: /lib/libc.so.6(__libc_start_main+0xf4) [0x2acbb68da374] 10: X(FontFileCompleteXLFD+0xa1) [0x430339] Fatal server error: Caught signal 11. Server aborting
(In reply to comment #18) > Ok tried the new driver. Xorg bombed out w/ a Sig 11. I attached the entire > log. Below is the snip-it w/ the backtrace. When I tried to startx w/ the new > driver it did cause the second display to try and initialize. > > Backtrace: > 0: X(xf86SigHandler+0x71) [0x48bec1] > 1: /lib/libc.so.6 [0x2acbb68ec940] > 2: /usr/lib64/xorg/modules/drivers/radeon_drv.so(RADEONTMDSPowerSet+0x29) > [0x2acbb7be0c09] > 3: /usr/lib64/xorg/modules/drivers/radeon_drv.so [0x2acbb7bd074e] > 4: /usr/lib64/xorg/modules/drivers/radeon_drv.so [0x2acbb7bd0a49] > 5: /usr/lib64/xorg/modules/drivers/radeon_drv.so(RADEONScreenInit+0x150d) > [0x2acbb7bd2b0d] > 6: X(AddScreen+0x236) [0x430666] > 7: X(InitOutput+0x267) [0x45f017] > 8: X(main+0x26f) [0x430e5f] > 9: /lib/libc.so.6(__libc_start_main+0xf4) [0x2acbb68da374] > 10: X(FontFileCompleteXLFD+0xa1) [0x430339] > > Fatal server error: > Caught signal 11. Server aborting > That's because the driver failed to detect the TMDS chip. When that fails the sil object doesn't exist so it cannot be accessed, hence the sig11. You can add checks for info->extTMDS around the various calls to external TMDS functions. Unfortunately, I can't get the sil to respond. Not sure what needs to be done yet.
Sorry about the phenomenal bug spam, guys. Adding xorg-team@ to the QA contact so bugs don't get lost in future.
*** This bug has been marked as a duplicate of bug 8090 ***
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.