Summary: | VGA-0 can't be activated using xrandr, even though it is properly detected by xrandr -q | ||
---|---|---|---|
Product: | xorg | Reporter: | Charlie Xia <charlie.xia.fdu> |
Component: | Driver/Radeon | Assignee: | xf86-video-ati maintainers <xorg-driver-ati> |
Status: | RESOLVED FIXED | QA Contact: | Xorg Project Team <xorg-team> |
Severity: | critical | ||
Priority: | high | CC: | ag65151, aklitzing, charlie.xia.fdu, fabian, kagashe |
Version: | 7.3 (2007.09) | ||
Hardware: | Other | ||
OS: | All | ||
Whiteboard: | |||
i915 platform: | i915 features: | ||
Attachments: |
Created attachment 16176 [details]
My xorg.conf File
Unfortunately, we never got dualhead working on certain older IGP chips. I think there is some GPIO magic involved in setting it up, but it hasn't been sorted out yet. You might try booting with the VGA attached so that the bios comes up on the VGA screen. Alex, Thanks for the reply. I tried to boot the laptop with external monitor attached and turned on. The booting process is shown on both monitors. I then enter the BIOs of the laptop. The BIOs is shown on both monitors too. only when I started X, the external monitor is off even xrandr shows it is connected and on. More stranger, if i turn it off by 'xrandr --output VGA-0 --off', the LVDS get resized. my VGA-0 is supposed to run in 1280x1024 and LVDS 1024x768. Hope that gives you more information for judgement. And can you briefly explain what is the GPIO magic? Can I do anything more? or just give up? I actually had put a lot of my time on it and it drove me ;(. Charlie (In reply to comment #3) > Alex, > > Thanks for the reply. > I tried to boot the laptop with external monitor attached and turned on. > The booting process is shown on both monitors. I then enter the BIOs of the > laptop. The BIOs is shown on both monitors too. only when I started X, the > external monitor is off even xrandr shows it is connected and on. > > More stranger, if i turn it off by 'xrandr --output VGA-0 --off', the LVDS get > resized. my VGA-0 is supposed to run in 1280x1024 and LVDS 1024x768. > Hope that gives you more information for judgement. > > And can you briefly explain what is the GPIO magic? Can I do anything more? or > just give up? I actually had put a lot of my time on it and it drove me ;(. > > > Charlie > just a little clearifying, I mean when I started X, the VGA-0 became black even though xrandr says it is on. (In reply to comment #3) > More stranger, if i turn it off by 'xrandr --output VGA-0 --off', the LVDS get > resized. my VGA-0 is supposed to run in 1280x1024 and LVDS 1024x768. > Hope that gives you more information for judgement. > right. the driver thinks the output is working. we are just missing some bit in the dac init sequence to make the dac actually produce an output. > And can you briefly explain what is the GPIO magic? Can I do anything more? or > just give up? I actually had put a lot of my time on it and it drove me ;(. I think you may have to toggle some gpio pins to switch the dac output between the S-video port and the VGA port, but as you are still having problems even with VGA connected at boot, I suspect the problem may be elsewhere. I'll have to check the register specs and see if there are any strange quirks with certain old IGP chips. (In reply to comment #5) > (In reply to comment #3) > > More stranger, if i turn it off by 'xrandr --output VGA-0 --off', the LVDS get > > resized. my VGA-0 is supposed to run in 1280x1024 and LVDS 1024x768. > > Hope that gives you more information for judgement. > > > > right. the driver thinks the output is working. we are just missing some bit > in the dac init sequence to make the dac actually produce an output. > > > And can you briefly explain what is the GPIO magic? Can I do anything more? or > > just give up? I actually had put a lot of my time on it and it drove me ;(. > > I think you may have to toggle some gpio pins to switch the dac output between > the S-video port and the VGA port, but as you are still having problems even > with VGA connected at boot, I suspect the problem may be elsewhere. I'll have > to check the register specs and see if there are any strange quirks with > certain old IGP chips. > I really expect that you can figure things out, if it is not too painful. If I can be of any help to you just let me know. And if you come up with any patch or hack, keep me informed and I will test it ASAP. Thanks This is for Charlie Xia the originator of this Bug. I have the same card and experienced same problem on Ubuntu Hardy Heron. Moreover the LCD screen of my Laptop is broken and I am using the Laptop as a Desktop through external VGA monitor and desperately trying to make it work. I configured through xorg.conf and used vesa driver. Now the display works on both LCD (I can see through some patches working) and the VGA monitor. The output of xrandr -q is as follows: ~$ xrandr -q Screen 0: minimum 640 x 480, current 1024 x 768, maximum 1024 x 768 default connected 1024x768+0+0 0mm x 0mm 1024x768 61.0* 800x600 73.0 640x480 86.0 The Device, Monitor and Screen sections of xorg.conf are as follows: Section "Device" Identifier "ATI Technologies Inc Radeon IGP 330M/340M/350M" Driver "vesa" BusID "PCI:1:5:0" Option "Monitor-VGA-0" "VGA monitor" EndSection Section "Monitor" Identifier "VGA monitor" EndSection Section "Screen" Identifier "Default Screen" Device "ATI Technologies Inc Radeon IGP 330M/340M/350M" Monitor "VGA monitor" DefaultDepth 24 SubSection "Display" Modes "1024x768" EndSubSection EndSection Please note that I had no problem in Ubuntu Gutsy Gibbon, therefore, you can consider to downgrade the xserver in Debian and the ati driver works. Hope it helps. *** Bug 15888 has been marked as a duplicate of this bug. *** Hi, I have an HP nc4010 (nearly the same as nc4000) also with a radeon IGP 350M and running Debian lenny (i386). After upgrading to xserver-xorg_7.3.0+10, xserver-xorg-core_1.4.1~git20080131-4 and xserver-xorg-video-ati_6.8.0-1, I got the same issue that the external monitor did not work. Now, I downgraded to xserver-xorg_7.1.0-19, xserver-xorg-core_1.3.0.0.dfsg-12lenny2 (still online) and xserver-xorg-video-ati_6.7.197-1 (I built it myself from the online available debian sources because I didn't find this version online and with version 6.6.3-2 I had some problems). After this downgrade it works again and I can also specify normal xrandr 1.2 commands and they succeed! If I can help you with something, please tell me. I can confirm this also with an HP ZE5500 series laptop (ATI Radeon IGP 340M). I am wondering if I should roll back to a previous version of X when it worked. I am willing to suffer along for a time using vesa as a work around, but if it is going to be a great deal of time before this bug is looked at, then I will roll back. Maybe an even better question would be if this bug is going to get any time at all. I know these cards are on the older end of the scale, so developers may not have any desire/time to give. It would be greatly appreciated if someone "in the know" would tell me whether this bug is going to actually get attention or if it is just going to fade into the sunset. (In reply to comment #9) > Hi, I have an HP nc4010 (nearly the same as nc4000) also with a radeon IGP 350M > and running Debian lenny (i386). > After upgrading to xserver-xorg_7.3.0+10, xserver-xorg-core_1.4.1~git20080131-4 > and xserver-xorg-video-ati_6.8.0-1, I got the same issue that the external > monitor did not work. > > Now, I downgraded to xserver-xorg_7.1.0-19, > xserver-xorg-core_1.3.0.0.dfsg-12lenny2 (still online) and > xserver-xorg-video-ati_6.7.197-1 (I built it myself from the online available > debian sources because I didn't find this version online and with version > 6.6.3-2 I had some problems). > After this downgrade it works again and I can also specify normal xrandr 1.2 > commands and they succeed! If 6.7.197 worked and 6.8.0 didn't, it would be great if you could use git to bisect down which commit caused it to break. I would be happy to use "git" to help troubleshoot, but I don't know what to do. Is there a tutorial somewhere on how to use git to isolate a commit? (In reply to comment #12) > I would be happy to use "git" to help troubleshoot, but I don't know what to > do. > > Is there a tutorial somewhere on how to use git to isolate a commit? > Building from git: 1. install build dependencies (xorg-dev packages) 2. checkout the ati git tree git clone git://anongit.freedesktop.org/git/xorg/driver/xf86-video-ati 3. cd xf86-video-ati 4. ./autogen.sh --prefix=/usr 5. make 6. make install (as root) Bisecting with git: 1. git bisect start 2. git bisect bad 3. tell git 6.7.197 is good: git bisect good eb99c3c5c9a2249cb84920f0f225e525fc3a4144 4. build and install (see above) 5. if it's broken: git bisect bad if it's working: git bisect good 6. repeats steps 4 and 5 until you've found the bad commit. "build and install" - does that mean repeat steps 4-6 from the git build ? "if it works" - does that mean I need to restart X after each build? I am a bit of n00b, but I want to get this info to you. Thanks for your patience. (In reply to comment #14) > "build and install" - does that mean repeat steps 4-6 from the git build ? > yes. > "if it works" - does that mean I need to restart X after each build? > yes. restart X and and try to enable the VGA port. Ok, according to my Xorg.0.log I was using the 6.7.197 driver and I still couldn't get my VGA-0 to display. xrandr knew it was there. The LVDS blinked when I tried to switch to the VGA-0 as if it was resizing properly, but the monitor never came on. Should I start earlier in git to help narrow it down? (In reply to comment #16) > > Should I start earlier in git to help narrow it down? > The first thing to do is to find a known good version. Once you have that, you can use bisect to find the commit that broke it. However, a lot of old IGP chips never worked properly with multiple heads enabled so YMMV. This is strange. What versions of other xorg packages do you use? For me, the following combination works: ii xserver-xorg 1:7.1.0-19 ii xserver-xorg-core 2:1.3.0.0.dfsg-12lenny2 ii xserver-xorg-dev 2:1.3.0.0.dfsg-12lenny2 ii xserver-xorg-input-evdev 1:1.1.2-6 ii xserver-xorg-input-kbd 1:1.1.0-4 ii xserver-xorg-input-mouse 1:1.1.1-3 ii xserver-xorg-input-synaptics 0.14.6-1 ii xserver-xorg-video-ati 1:6.7.197-1 ii xserver-xorg-video-vesa 1:1.3.0-1 These are all older versions (dunno whether they are still in debian archive, if you need them, I can send them to you). (In reply to comment #18) > ii xserver-xorg-video-ati 1:6.7.197-1 If you could use git to bisect the problem as per comment 13 it would be very helpful. Created attachment 17220 [details] [review] Fixes this problem, but it would probably break other radeon cards Thanks for motivating me to find a solution and providing me with a howto to use the bisect tool, really nice tool btw. :) Wow, took me quite some time tracking the problem down (although using git bisect). First, bisect took me to another revision: 30cab1dbebb7bdb925f2fe9f91b84183312bbbfd Applying the reverse patch did not fix it for me in HEAD revision. Thus, tracking down the bug a second time. This time using the reverse patch from this revision. Then bisect took me to 000741e250e54122b0adc91694eb4bfa320a70fb which is a huge diff with much radeon clean up. One line caught my eye: "IsIGP". And with the appended little patch, my external monitor works straight ahead. Probably removing these two lines is not optimal for all users (IMHO). Thus it would be great if you could find a workaround that does not break it for all users. I will test again ;) (In reply to comment #20) > Created an attachment (id=17220) [details] > Fixes this problem, but it would probably break other radeon cards Does VGA-0 work if you boot without a monitor attached and attempt to turn on VGA-0 later using xrandr? (In reply to comment #21) > (In reply to comment #20) > > Created an attachment (id=17220) [details] [details] > > Fixes this problem, but it would probably break other radeon cards > > Does VGA-0 work if you boot without a monitor attached and attempt to turn on > VGA-0 later using xrandr? > Yes, I just tested it and it works. (In reply to comment #17) > (In reply to comment #16) > > > > Should I start earlier in git to help narrow it down? > > > > The first thing to do is to find a known good version. Once you have that, you > can use bisect to find the commit that broke it. However, a lot of old IGP > chips never worked properly with multiple heads enabled so YMMV. > Ok, I just got it working with an older live CD (Ubuntu - Gutsy Gibbon). When I looked at the Xorg.0.log with the live CD it showed the ati driver with version 6.7.195. Can I start the git bisect there? P.S. Sorry to ask, but what is YMMV? (In reply to comment #23) > Ok, I just got it working with an older live CD (Ubuntu - Gutsy Gibbon). When I > looked at the Xorg.0.log with the live CD it showed the ati driver with version > 6.7.195. > > Can I start the git bisect there? > Sounds like it's the same issue as Fabian. I would suggest trying his patch to start with. I'm trying to get this sorted out internally. Stay tuned. > > > P.S. Sorry to ask, but what is YMMV? > Your Mileage May Vary. (In reply to comment #24) > (In reply to comment #23) > > > Ok, I just got it working with an older live CD (Ubuntu - Gutsy Gibbon). When I > > looked at the Xorg.0.log with the live CD it showed the ati driver with version > > 6.7.195. > > > > Can I start the git bisect there? > > > > Sounds like it's the same issue as Fabian. I would suggest trying his patch to > start with. I'm trying to get this sorted out internally. Stay tuned. > OK, I can confirm Fabian's patch works for my hardware. Thank you Alex and Fabian for hanging with me. I've attempted to fix this in git: e78e8a21b4040cd7f1983c241c860d9209398396 Let me know if it fixes things for you. Latest git works for me. Thanks Alex. (In reply to comment #26) > I've attempted to fix this in git: > e78e8a21b4040cd7f1983c241c860d9209398396 > > Let me know if it fixes things for you. Works for me, too. Thank you very much! The updated ati driver is available in Debin Sid. I have downloaded the required drivers from Debian Sid repositories and they are working on Hardy: xserver-xorg-video-ati_6.8.192-1_i386.deb xserver-xorg-video-mach64_6.8.0-1_i386.deb xserver-xorg-video-r128_6.8.0-1_i386 xserver-xorg-video-radeon_6.8.192-1_i386 I have deleted xorg.conf file, xrandrr -q is showing VGA-0 and LVDS outputs and I could turn off LVDS. I used "git bisect" to find this. Since changeset e78e8a21b4040cd7f1983c241c860d9209398396 my VGA flickers a lot and is grainy/fuzzy. I can't see anything on that monitor. If I use latest git-code and revert this changeset, everything will work fine - I never had problems with VGA (and xrandr) before that. It's only this change that cause my problems. lspci -v 01:05.0 VGA compatible controller: ATI Technologies Inc RS485 [Radeon Xpress 1100 IGP] (prog-if 00 [VGA controller]) Subsystem: Hewlett-Packard Company Unknown device 30b0 Flags: bus master, fast Back2Back, 66MHz, medium devsel, latency 64, IRQ 17 Memory at c0000000 (32-bit, prefetchable) [size=128M] I/O ports at 6000 [size=256] Memory at d4300000 (32-bit, non-prefetchable) [size=64K] [virtual] Expansion ROM at d4320000 [disabled] [size=128K] Capabilities: [50] Power Management version 2 Notebook HP nx6325 This should be fixed now: cfaa23d925e3c062cf87ea844566ac11ea02d69e Thanks, that fixed the problem. Really fast. :-) |
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.
Created attachment 16175 [details] Xorg log file after reboot and issuing 'xrandr --auto' with external monitor connected and turned on My laptop is HP NC4000 (12' display supports 1024x768) with AIT Radeon IGP 350M (32M shared mem), one VGA and one S-video port. I am running Debian Sid with xorg(1:7.3+10), xserver-xorg-video-ati(1:6.8.0-1) and 'xrandr -v' shows "Server reports RandR version 1.2 The situation is xrandr seems to have correctly detected my connected monitor HU196D(19' LCD, supports up to 1280x1024) as well as the CRTC. But it can't output any signal to the external monitor as my external monitor remains "no signal input, check cable" after I have issued 'xrandr --output VGA-0 --auto' or whatever command to bring it on. Can't figure out what's going on by google search and hacking by myself. What I can do now is to report a bug for help. Thanks! Run 'xrandr -q' shows correct detection of my LVDS and VGA-0 monitors as below: [charlie@charlie-laptop]/var/log>xrandr -q Screen 0: minimum 320 x 200, current 1024 x 768, maximum 2048 x 768 VGA-0 connected 1024x768+0+0 (normal left inverted right x axis y axis) 376mm x 301mm 1024x768 75.1* 70.1 60.0 800x600 72.2 75.0 60.3 640x480 75.0 72.8 60.0 720x400 70.1 LVDS connected 1024x768+0+0 (normal left inverted right x axis y axis) 0mm x 0mm 1024x768 60.0*+ 60.0 800x600 60.3 640x480 59.9 S-video disconnected (normal left inverted right x axis y axis) And xrandr also detects right CRTC. 'xrandr --verbose' shows: [charlie@charlie-laptop]/var/log>xrandr --verbose Screen 0: minimum 320 x 200, current 1024 x 768, maximum 2048 x 768 VGA-0 connected 1024x768+0+0 (0x4f) normal (normal left inverted right x axis y axis) 376mm x 301mm Identifier: 0x4c Timestamp: 35380 Subpixel: no subpixels Clones: CRTC: 1 CRTCs: 0 1 EDID_DATA: 00ffffffffffff0022649a8957090000 0e1001036c261e782afd56a5534a9d24 144f54adcf0081800101010101010101 010101010101302a009851002a403070 1300782d1100001e000000fd00384b1e 500e000a202020202020000000fc0048 55313936440a202020202020000000ff 003631344741334843413233393100c0 load_detection: 0 (0x00000000) range: (0,1) 1024x768 (0x4f) 78.8MHz +HSync +VSync h: width 1024 start 1040 end 1136 total 1312 skew 0 clock 60.1KHz v: height 768 start 769 end 772 total 800 clock 75.1Hz 1024x768 (0x50) 75.0MHz -HSync -VSync h: width 1024 start 1048 end 1184 total 1328 skew 0 clock 56.5KHz v: height 768 start 771 end 777 total 806 clock 70.1Hz 1024x768 (0x51) 65.0MHz -HSync -VSync h: width 1024 start 1048 end 1184 total 1344 skew 0 clock 48.4KHz v: height 768 start 771 end 777 total 806 clock 60.0Hz 800x600 (0x52) 50.0MHz +HSync +VSync h: width 800 start 856 end 976 total 1040 skew 0 clock 48.1KHz v: height 600 start 637 end 643 total 666 clock 72.2Hz 800x600 (0x53) 49.5MHz +HSync +VSync h: width 800 start 816 end 896 total 1056 skew 0 clock 46.9KHz v: height 600 start 601 end 604 total 625 clock 75.0Hz 800x600 (0x54) 40.0MHz +HSync +VSync h: width 800 start 840 end 968 total 1056 skew 0 clock 37.9KHz v: height 600 start 601 end 605 total 628 clock 60.3Hz 640x480 (0x55) 31.5MHz -HSync -VSync h: width 640 start 656 end 720 total 840 skew 0 clock 37.5KHz v: height 480 start 481 end 484 total 500 clock 75.0Hz 640x480 (0x56) 31.5MHz -HSync -VSync h: width 640 start 664 end 704 total 832 skew 0 clock 37.9KHz v: height 480 start 489 end 491 total 520 clock 72.8Hz 640x480 (0x57) 25.2MHz -HSync -VSync h: width 640 start 656 end 752 total 800 skew 0 clock 31.5KHz v: height 480 start 490 end 492 total 525 clock 60.0Hz 720x400 (0x58) 28.3MHz -HSync +VSync h: width 720 start 738 end 846 total 900 skew 0 clock 31.5KHz v: height 400 start 412 end 414 total 449 clock 70.1Hz LVDS connected 1024x768+0+0 (0x59) normal (normal left inverted right x axis y axis) 0mm x 0mm Identifier: 0x4d Timestamp: 35380 Subpixel: horizontal rgb Clones: CRTC: 0 CRTCs: 0 scaler: full backlight: 255 (0x000000ff) range: (0,255) 1024x768 (0x59) 65.0MHz h: width 1024 start 1040 end 1176 total 1344 skew 0 clock 48.4KHz v: height 768 start 770 end 776 total 806 clock 60.0Hz 1024x768 (0x51) 65.0MHz -HSync -VSync h: width 1024 start 1048 end 1184 total 1344 skew 0 clock 48.4KHz v: height 768 start 771 end 777 total 806 clock 60.0Hz 800x600 (0x54) 40.0MHz +HSync +VSync h: width 800 start 840 end 968 total 1056 skew 0 clock 37.9KHz v: height 600 start 601 end 605 total 628 clock 60.3Hz 640x480 (0x5a) 25.2MHz -HSync -VSync h: width 640 start 656 end 752 total 800 skew 0 clock 31.5KHz v: height 480 start 490 end 492 total 525 clock 59.9Hz S-video disconnected (normal left inverted right x axis y axis) Identifier: 0x4e Timestamp: 35380 Subpixel: no subpixels Clones: CRTCs: 0 1 tv_standard: ntsc tv_vertical_position: 0 (0x00000000) range: (-5,5) tv_horizontal_position: 0 (0x00000000) range: (-5,5) tv_horizontal_size: 0 (0x00000000) range: (-5,5) load_detection: 0 (0x00000000) range: (0,1) My xorg.conf: Section "Files" EndSection Section "InputDevice" Identifier "Generic Keyboard" Driver "kbd" Option "CoreKeyboard" Option "XkbRules" "xorg" Option "XkbModel" "pc104" Option "XkbLayout" "us" EndSection Section "InputDevice" Identifier "Configured Mouse" Driver "mouse" Option "CorePointer" Option "Device" "/dev/input/mice" Option "Protocol" "ImPS/2" Option "Emulate3Buttons" "true" 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 "ATI IGP Radeon 350M (Primary)" Driver "ati" BusID "PCI:1:5:0" Vendorname "ATI" VideoRam 32768 Option "Monitor-LVDS" "LAPTOP" #Option "Monitor-VGA" "VGAOUT" #no need to specify Monitor-VGA-0, it uses the "VGA-0" identifier automatically EndSection Section "Monitor" Identifier "LAPTOP" Option "DPMS" DisplaySize 250 185 EndSection Section "Monitor" Identifier "VGA-0" Option "DPMS" DisplaySize 376 301 EndSection Section "Screen" Identifier "LAPTOP Screen" Device "ATI IGP Radeon 350M (Primary)" DefaultDepth 24 SubSection "Display" Depth 24 Virtual 2048 768 EndSubSection EndSection Section "ServerLayout" Identifier "Dual Head Layout" Screen "LAPTOP Screen" InputDevice "Generic Keyboard" InputDevice "Configured Mouse" InputDevice "Synaptics Touchpad" EndSection