Created attachment 26700 [details] xorg.conf Hi, I've noticed some odd behavior while trying to configure a Macbook to operate using only the external MiniDVI output. My goal is to disable the Macbook's built-in LCD and operate the laptop with the lid closed, using an external LCD, mouse and keyboard. The Macbook doesn't have an external VGA connector or a TV connector, so I decided to disable these outputs in xorg.conf. Disabling the TV output works as expected. Disabling the VGA output causes incorrect detection of the external monitor. On starting X the external monitor (Benq G2400WD) is set to 1360x768 instead of 1920x1200 as specified in xorg.conf. It appears with VGA output enabled the EDID info is picked up from the external monitor correctly: (II) intel(0): EDID vendor "APP", prod id 40031 (II) intel(0): I2C device "SDVOB DDC Bus:E-EDID segment register" registered at address 0x60. (II) intel(0): I2C device "SDVOB DDC Bus:ddc2" registered at address 0xA0. (II) intel(0): I2C device "CRTDDC_A:E-EDID segment register" registered at address 0x60. (II) intel(0): I2C device "CRTDDC_A:ddc2" registered at address 0xA0. (II) intel(0): EDID vendor "BNQ", prod id 30730 (II) intel(0): Output VGA disconnected (II) intel(0): Output LVDS connected (II) intel(0): Output TMDS-1 connected (II) intel(0): Using user preference for initial modes (II) intel(0): Output LVDS using initial mode 1280x800 (II) intel(0): Output TMDS-1 using initial mode 1920x1200 With VGA output disabled the EDID info is picked up from the built-in LCD (vendor "APP") twice, causing incorrect setup of the external monitor: (II) intel(0): EDID vendor "APP", prod id 40031 (II) intel(0): Printing DDC gathered Modelines: (II) intel(0): Modeline "1280x800"x0.0 71.00 1280 1328 1360 1440 800 803 809 823 -hsync -vsync (49.3 kHz) (II) intel(0): EDID vendor "APP", prod id 40031 (II) intel(0): I2C device "SDVOB DDC Bus:E-EDID segment register" registered at address 0x60. (II) intel(0): I2C device "SDVOB DDC Bus:ddc2" registered at address 0xA0. (II) intel(0): Output LVDS connected (II) intel(0): Output TMDS-1 connected (II) intel(0): Using sloppy heuristic for initial modes (II) intel(0): Output LVDS using initial mode 1280x800 (II) intel(0): Output TMDS-1 using initial mode 1360x768 The two logs were obtained with a one-line change in xorg.conf (with and without the "Ignore" line below). Section "Monitor" Identifier "VGA" #Option "Ignore" "true" EndSection Please let me know if there's any further information I can provide.
Created attachment 26701 [details] Logfile with VGA output enabled
Created attachment 26703 [details] Logfile with VGA output disabled with Option "Ignore"
Section "Monitor" Identifier "TMDS-1" Option "DPMS" Option "PreferredMode" "1920x1200" EndSection Section "Device" ... option "ModeDebug" "true" ... EndSection Please modify your xorg.conf as above, meanwhile ignore VGA and TV in xorg.conf, then upload your xorg.log. Thanks Ma Ling
Created attachment 26789 [details] Logfile with VGA, TV ignored, ModeDebug enabled Requested logfile attached.
(In reply to comment #4) > Created an attachment (id=26789) [details] > Logfile with VGA, TV ignored, ModeDebug enabled > Requested logfile attached. From log fine, we can see EDID not is feteched, version 2.4.1 is too old for us, so could please update your driver from master tree. Thanks Ma Ling
(In reply to comment #5) > (In reply to comment #4) > > Created an attachment (id=26789) [details] [details] > > Logfile with VGA, TV ignored, ModeDebug enabled > > Requested logfile attached. > > From log fine, we can see EDID not is feteched, version 2.4.1 is too old for > us, so could please update your driver from master tree. > I tried today with everything built from git sources. Same problem as described with the 2.4.1 driver, I'll attach the log as well.
Created attachment 26847 [details] Logfile, git sources, ModeDebug enabled
Created attachment 26873 [details] please try the debug patch on your machine against latest driver, thanks The patch should resolve the issue: Before we hack Mac only when VGA output was constructed and disconnected,when ignoring VGA, original code is not effective. Thanks Ma Ling
Created attachment 26900 [details] Logfile with debug patch applied (working)
(In reply to comment #8) > Created an attachment (id=26873) [details] > please try the debug patch on your machine against latest driver, thanks > > The patch should resolve the issue: Before we hack Mac only when VGA output was > constructed and disconnected,when ignoring VGA, original code is not effective. > > Thanks > Ma Ling > I'm pleased to report the patch worked :) xrandr shows that outputs TV and VGA are both disabled and all the modes are now correctly detected from the external monitor on TMDS-1.
Jacob, with the latest driver you've tested, would you please help us to verify if you do _not_ ignore VGA, could it be detected correctly as "disconnected" as well? thanks.
(In reply to comment #11) > Jacob, with the latest driver you've tested, would you please help us to verify > if you do _not_ ignore VGA, could it be detected correctly as "disconnected" as > well? thanks. > I can confirm this works as expected. With the ignore lines in xorg.conf removed for VGA and TV, xrandr -q reports: Screen 0: minimum 320 x 200, current 1920 x 1200, maximum 2048 x 2048 VGA disconnected (normal left inverted right x axis y axis) LVDS connected 1280x800+0+0 (normal left inverted right x axis y axis) 286mm x 179mm 1280x800 59.9*+ 1024x768 85.0 75.0 70.1 60.0 832x624 74.6 800x600 85.1 72.2 75.0 60.3 56.2 640x480 85.0 72.8 75.0 59.9 720x400 85.0 640x400 85.1 640x350 85.1 TMDS-1 connected 1920x1200+0+0 (normal left inverted right x axis y axis) 519mmx 324mm 1920x1200 60.0*+ 1600x1200 60.0 1680x1050 59.9 1280x1024 75.0 60.0 1440x900 59.9 1280x800 59.9 1152x864 75.0 1152x720 60.0 1024x768 75.0 60.0 832x624 74.6 800x600 75.0 60.3 640x480 75.0 59.9 720x400 70.1 TV disconnected (normal left inverted right x axis y axis)
thanks. would you please attach the log?
Created attachment 26910 [details] Logfile, debug patch applied, VGA & TV enabled Logfile attached as requested.
Created attachment 27705 [details] [review] pleaset try the patch on your machine in KMS mode, thanks. Jacob Hart, the patch is for KMS mode, because we have no Mac device, could you pleaes try it on your machine, then upload dmesg and xorg.log with modedebug option on. Thanks for your help Ma Ling
(In reply to comment #14) > Created an attachment (id=26910) [details] > Logfile, debug patch applied, VGA & TV enabled > > Logfile attached as requested. > Any test result about the patch? ping? thanks.
Created attachment 28689 [details] Logfile, KMS mode, patch applied. I had some time to try a new kernel + patch over the weekend. The attached logfile was collected with ModeDebug enabled. All other options are from the original xorg.conf, except the names of each output were changed to map to the new KMS names (TMDS-1 --> DVI1, etc.) The performance is excellent compared to non KMS mode; so good, in fact, that I can leave desktop effects on for the first time since the switch to UXA. I can no longer use the console, however, since switching to KMS. The console goes blank at boot-up and returns only after X is started for the gdm login. Likewise, switching VTs doesn't work and I get a corrupted display until I switch back to X.
Created attachment 28701 [details] dmesg, KMS mode
(In reply to comment #18) > Created an attachment (id=28701) [details] > dmesg, KMS mode Thanks for the test. From the test it seems that it can get about 18 modes for mini-DVI after applying the patch in comment #15. As the following commit is already shipped in Eric's drm-intel-next tree, this bug will be marked as the resolved. commit 57cdaf90f5f607eb029356074fefb66c9b1c0659 Author: Keith Packard <keithp@keithp.com> Date: Fri Sep 4 13:07:54 2009 +0800 drm/I915: Use the CRT DDC to get the EDID for DVI-connector on Mac. Thanks. >
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.