Summary: | Second monitor is initially dpms-off | ||||||||
---|---|---|---|---|---|---|---|---|---|
Product: | xorg | Reporter: | Daniel Zappala <zappala> | ||||||
Component: | Driver/Radeon | Assignee: | Xorg Project Team <xorg-team> | ||||||
Status: | RESOLVED FIXED | QA Contact: | |||||||
Severity: | normal | ||||||||
Priority: | high | CC: | alexdeucher, daniel, dberkholz, erik.andren, james.bromley, wschlich | ||||||
Version: | 6.8.0 | ||||||||
Hardware: | x86 (IA32) | ||||||||
OS: | Linux (All) | ||||||||
Whiteboard: | |||||||||
i915 platform: | i915 features: | ||||||||
Attachments: |
|
Description
Daniel Zappala
2004-10-18 09:16:05 UTC
Created attachment 1125 [details]
xorg.conf using mergedfb
xorg.conf using mergedfb and radeon driver -- second display stays blank until
OffTime expires
this happens with xinerama as well. see xfree86 bugzilla #276 can you try the patch in bug 1559 and see if it helps? can you also attach your xorg log? I have exactly the same problem. The fix, as suggested by Alex Deucher, is to type "xset dpms force off" once X comes up. This puts both the monitors into powersave. When they come on again, they should both be working. As he says, "something must not be initialized properly on the initial mode set, but then gets properly set on a dpms on event." Created attachment 1571 [details] [review] patch can you give this patch a try? Thanks, I'm going to throw this into the Ubuntu packages and see if this fixes it. Didn't fix it. Daniel, could you please try editing xc/programs/Xserver/hw/xfree86/drivers/ati/radeon_driver.c, and at the same point (grep for 'save->fp2_gen_cntl |= RADEON_FP2_SRC_SEL_CRTC2;'), add the following lines afterwards: save->fp2_gen_cntl &= ~(RADEON_FP2_BLANK_EN); save->fp2_gen_cntl |= RADEON_FP2_ON; and recompile and see if this works for you. *** Bug 2873 has been marked as a duplicate of this bug. *** Any news on this? I have exactly the same problem with my new HIS Excalibur Radeon 9600 Dual DVI card. currently I'm using a fugly hack. I created the file /etc/X11/xinit/xinitrc.d/99xset, as all executable bash scripts below /etc/X11/xinit/xinitrc.d/ get sourced by my Gnome XSession: --8<--[ /etc/X11/xinit/xinitrc.d/99xset ]--8<-- #!/bin/bash xset dpms force off xset dpms force on --8<-- this works for me -- it takes a second and then both screens show up correctly. howevery, this is just a temporary workaround. any schedule or chance on getting a fix into Xorg?! I tried the patch from comment #8 and it works for me. Here's the diff I used: http://dev.gentoo.org/~wschlich/src/X11R6.8.2-src.radeon_fp2-enable.diff Note it didn't work when I placed the lines into the block above right below 'save->fp2_gen_cntl |= RADEON_FP2_SRC_SEL_CRTC2;', I guess because my R9600 is an R300 variant (RV350 AP) :-) So, I could have placed it into the above block (CHIP_FAMILY_R200 || IS_R300_VARIANT), but I didn't... (In reply to comment #12) > I tried the patch from comment #8 and it works for me. > Here's the diff I used: > > http://dev.gentoo.org/~wschlich/src/X11R6.8.2-src.radeon_fp2-enable.diff > > Note it didn't work when I placed the lines into the block above right below > 'save->fp2_gen_cntl |= RADEON_FP2_SRC_SEL_CRTC2;', I guess because my R9600 is > an R300 variant (RV350 AP) :-) So, I could have placed it into the above block > (CHIP_FAMILY_R200 || IS_R300_VARIANT), but I didn't... I don't see why this patch would make a difference since those bits are set and cleared at the start of the if block: if ((info->DisplayType == MT_DFP && info->IsSecondary) || info->MergeType == MT_DFP) { save->crtc2_gen_cntl = (RADEON_CRTC2_EN | (format << 8)); save->fp2_h_sync_strt_wid = save->crtc2_h_sync_strt_wid; save->fp2_v_sync_strt_wid = save->crtc2_v_sync_strt_wid; save->fp2_gen_cntl = info->SavedReg.fp2_gen_cntl | RADEON_FP2_ON; save->fp2_gen_cntl &= ~(RADEON_FP2_BLANK_EN); I can only say that it works with and doesn't work without the patch. Reported fixed in Ubuntu: https://bugzilla.ubuntu.com/show_bug.cgi?id=4343 I've encountered the exact same problem with xorg-x11-6.8.2-62 on Fedora Core 4. The "xset dpms force off" command works exactly the same for me, as does the patch to radeon_driver.c. Call it crazy, but it works. Actually my setup differs a little from the first poster. MergedFB isn't working well for me. This is a Dell PCI-E Radeon X300 card, currently setup using dual-screen Xinerama instead of MergedFB. I might not be excerpting the right section of the Xorg.0.log; let me know if you want the entire output: (II) Primary Device is: PCI 01:00:0 (WW) RADEON: No matching Device section for instance (BusID PCI:1:0:1) found (--) Chipset ATI Radeon X300 (RV370) 5B60 (PCIE) found (--) Chipset ATI Radeon X300 (RV370) 5B60 (PCIE) found [...] ((--) RADEON(0): Chipset: "ATI Radeon X300 (RV370) 5B60 (PCIE)" (ChipID = 0x5b60) [...] II) RADEON(0): I2C bus "DDC" initialized. (II) RADEON(0): Legacy BIOS detected (II) RADEON(0): Connector0: DDCType-2, DACType-1, TMDSType-0, ConnectorType-3 (II) RADEON(0): Connector1: DDCType-3, DACType-0, TMDSType-1, ConnectorType-3 EDID information including modes is correctly gathered for each of the displays: (II) RADEON(0): EDID data from the display on port 1 ---------------------- (II) RADEON(0): Manufacturer: DEL Model: e009 Serial#: 843268428 [...] (II) RADEON(0): EDID data from the display on port 2----------------------- (II) RADEON(0): Manufacturer: DEL Model: e001 Serial#: 808927833 [...] Connector information looks correct: (II) RADEON(0): Primary: Monitor -- TMDS Connector -- DVI-I DAC Type -- TVDAC/ExtDAC TMDS Type -- Internal DDC Type -- DVI_DDC (II) RADEON(0): Secondary: Monitor -- TMDS Connector -- DVI-I DAC Type -- Primary TMDS Type -- External DDC Type -- VGA_DDC [...] However it decides MergedFB is a no-go: (WW) RADEON(0): Failed to detect secondary monitor, MergedFB/Clone mode disabled If I switch to a single screen setup with 'Option "MergedFB" "true"', however with Xinerama still set "on" in the ServerLayout, I get two operational displays, and the messages: (II) RADEON(0): MergedFB mode forced on. [...] (II) RADEON(0): Xinerama active, not initializing Radeon Pseudo-Xinerama As a result of the issue reported in the latter message, apps treat the display as one big screen which is inconvenient. So, I turned off Xinerama, and to my surprise, my second monitor went blank and the "xset dpms force off" had no effect in trying to revive it. Backing out to any of the previous setups brought the monitor back. Therefore the best setup I have so far is to use a multi-screen Xinerama setup. Well, I've largely alleviated all my problems. Firstly, the current CVS snapshot works correctly out of the box in Xinerama mode. Secondly, the MergedFB problem I was having was that I hadn't setup a "MetaModes" line, so the X server was using the modeline from the primary monitor, which the secondary couldn't handle. It seems a little strange that it would override the DDC parameters so quietly. However, as far as my issues are concerned I don't think there are any critical actions left in the current development version of Xorg. This is working fine for me now. I am using Xorg 6.8.2-r6 with mergedfb (the same xorg.conf that I originally submitted) and the radeon driver. Are someone listed on this bug still experiencing this problem using a current version of xorg? Ping! Closing. Please reopen if this issue still exists with a current version of xorg. (i e 7.1) |
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.