I have a Lenovo x200s with integrated Intel Graphics: 00:02.0 VGA compatible controller: Intel Corporation Mobile 4 Series Chipset Integrated Graphics Controller (rev 07) The "Ultrabase" docking station have a DisplayPort, where I have connected a DVI-D monitor using a DP-DVI cable. The dock also have a VGA monitor connected to the VGA port. The following commit causes a regression: commit fc816655236cd9da162356e96e74c7cfb0834d92 Author: Zhao Yakui <yakui.zhao@intel.com> Date: Tue Nov 24 09:48:45 2009 +0800 drm/i915: Don't set up HDMI ports that aren't in the BIOS device table. Use the child device array to decide whether the given HDMI output should be initialized. If the given HDMI port can't be found in child device array, it is not present and won't be initialized. Signed-off-by: Zhao Yakui <yakui.zhao@intel.com> Signed-off-by: Eric Anholt <eric@anholt.net> After this the DVI-monitor is not recognized as connected when I put the laptop into the dock. LVDS and VGA still works. If I reboot the laptop while still docked the output works, and is named "HDMI1". Reverting commit fc816655236cd9da162356e96e74c7cfb0834d92 makes the output work ok again. After booting undocked LVDS1 is connected and VGA1,HDMI1,HDMI2,DP1 unconnected. Docking results in VGA1 and HDMI2 beeing connected and working, so now the DP-port is now HDMI2. xrandr outputs: # Booting undocked. output after putting laptop in the dock: paran@faran:~$ xrandr Screen 0: minimum 320 x 200, current 2720 x 1024, maximum 8192 x 8192 VGA1 connected 1280x1024+1440+0 (normal left inverted right x axis y axis) 376mm x 301mm 1280x1024 60.0*+ 75.0 1152x864 75.0 1024x768 75.1 60.0 800x600 75.0 60.3 640x480 75.0 60.0 720x400 70.1 LVDS1 connected 1440x900+0+0 (normal left inverted right x axis y axis) 261mm x 163mm 1440x900 50.0*+ 59.9 1360x768 59.8 1152x864 100.0 85.1 85.0 75.0 75.0 70.0 60.0 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 DP1 disconnected (normal left inverted right x axis y axis) # After booting with laptop in the dock: paran@faran:~$ xrandr Screen 0: minimum 320 x 200, current 1152 x 864, maximum 8192 x 8192 VGA1 connected (normal left inverted right x axis y axis) 1280x1024 60.0 + 75.0 1152x864 75.0 1024x768 75.1 60.0 800x600 75.0 60.3 640x480 75.0 60.0 720x400 70.1 LVDS1 connected 1152x864+0+0 (normal left inverted right x axis y axis) 261mm x 163mm 1440x900 50.0 + 59.9 1360x768 59.8 1152x864 100.0 85.1 85.0 75.0* 75.0 70.0 60.0 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 HDMI1 connected 1152x864+0+0 (normal left inverted right x axis y axis) 367mm x 275mm 1600x1200 60.0 + 1280x1024 75.0 60.0 1152x864 75.0* 1024x768 75.1 60.0 800x600 75.0 60.3 640x480 75.0 60.0 720x400 70.1 paran@faran:~$ # Commit fc816655236cd9da162356e96e74c7cfb0834d92 reverted, after booting undocked: paran@faran:~$ xrandr Screen 0: minimum 320 x 200, current 1440 x 900, maximum 8192 x 8192 VGA1 disconnected (normal left inverted right x axis y axis) LVDS1 connected 1440x900+0+0 (normal left inverted right x axis y axis) 261mm x 163mm 1440x900 50.0*+ 59.9 1360x768 59.8 1152x864 100.0 85.1 85.0 75.0 75.0 70.0 60.0 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 HDMI1 disconnected (normal left inverted right x axis y axis) HDMI2 disconnected (normal left inverted right x axis y axis) DP1 disconnected (normal left inverted right x axis y axis) # Commit fc816655236cd9da162356e96e74c7cfb0834d92 reverted, after booting undocked and then putting the laptop into the dock: paran@faran:~$ xrandr Screen 0: minimum 320 x 200, current 1600 x 1200, maximum 8192 x 8192 VGA1 connected 1280x1024+0+0 (normal left inverted right x axis y axis) 376mm x 301mm 1280x1024 60.0*+ 75.0 1152x864 75.0 1024x768 75.1 60.0 800x600 75.0 60.3 640x480 75.0 60.0 720x400 70.1 LVDS1 connected (normal left inverted right x axis y axis) 1440x900 50.0 + 59.9 1360x768 59.8 1152x864 100.0 85.1 85.0 75.0 75.0 70.0 60.0 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 HDMI1 disconnected (normal left inverted right x axis y axis) HDMI2 connected 1600x1200+0+0 (normal left inverted right x axis y axis) 367mm x 275mm 1600x1200 60.0*+ 1280x1024 75.0 60.0 1152x864 75.0 1024x768 75.1 60.0 800x600 75.0 60.3 640x480 75.0 60.0 720x400 70.1 DP1 disconnected (normal left inverted right x axis y axis)
Will you please attach the output of vbios.dump when the system is booted with/without dock? the vbios.dump can be obtained by using the following commands: 1. echo 1 > /sys/devices/pci0000:00/0000:00:02.0/rom 2. cat /sys/devices/pci0000:00/0000:00:02.0/rom >vbios.dump 3. echo 0 > /sys/devices/pci0000:00/0000:00:02.0/rom Thanks.
Created attachment 24337 [details] boot with dock
Created attachment 24338 [details] boot without dock Here are the requested attachments. Regards, Pär
Created attachment 24340 [details] Try the patch which deletes the code of using child device array parsed from VBT to setup HDMI/DP Will you please try the debug patch and see whether the issue still exists? Thanks.
Please add the boot option of "drm.debug=0x06" and attach the output of dmesg. (Please test it with/without the dock). thanks.
(In reply to comment #5) > Please add the boot option of "drm.debug=0x06" and attach the output of > dmesg. > (Please test it with/without the dock). I will try your patch and then send the dmesg output. However I probably will not have time to do this until the end of next week. /Pär
Please also add the boot option of "nomodset" and attach the output of intel_reg_dumper with/without dock. It will be better that you can do the above test with/without the DVI monitor when the dock is used. Generally speaking, the intel_reg_dumper tool is already shipped in most distribution. If you can't find it, please download it from: http://xorg.freedesktop.org/archive/individual/app/ or the latest code at git://anongit.freedesktop.org/git/xorg/app/intel-gpu-tools. Install it by standard procedure: autogen.sh, configure, make, and make install Thanks.
It will be great if you can attach the output of "xrandr -q " when the patch in comment #4 is applied. Thanks.
Will you please confirm whether the DP-to-DVI cable is packaged with the dock or the DVI-D monitor?That is to say where you get the DP-to-DVI cable. Do you try to connector monitor directly by using DP cable? Thanks.
Please also attach the output of vbios.dump with the monitor connected/disconnected when the dock is used. Thanks.
*** Bug 14947 has been marked as a duplicate of this bug. ***
Handled-By : ykzhao <yakui.zhao@intel.com>
(In reply to comment #9) > Will you please confirm whether the DP-to-DVI cable is packaged with the dock > or the DVI-D monitor?That is to say where you get the DP-to-DVI cable. No monitor cables were packaged with the laptop or dock. The DP-to-DVI cable is unbranded and was purchased separately, not from Lenovo. > Do you try to connector monitor directly by using DP cable? No, I don't have access to any monitors with DP input. The rest of your questions have to wait until next week, when I am back from vacation and have physical access to the dock. /Pär
On Tuesday 12 January 2010, Pär Andersson wrote: > "Rafael J. Wysocki" <rjw@sisk.pl> writes: > > > The following bug entry is on the current list of known regressions > > from 2.6.32. Please verify if it still should be listed and let me know > > (either way). > > It should still be listed.
Now the following commit is already shipped in Eric's for-linus tree and soon it will hit the Linus's mater tree. >commit 6207937d4feea000913e8ca23fe20c7744be7847 Author: Zhao Yakui <yakui.zhao@intel.com> Date: Wed Jan 6 09:49:31 2010 +0800 drm/i915: Don't use the child device parsed from VBT to setup HDMI/DP So this bug will be marked as resolved. thanks.
Created attachment 24559 [details] requested info Hi, Sorry for the delay in running these tests. As I wrote to Rafael I have had problems with my ISP. You have marked this as resolved, but I am attaching the requested information anyway as it might still be interesting to you. I have tested six different combinations. First 3 tests are using vanilla v2.6.33-rc4: * v2.6.33-rc4_dock - booted in the dock * v2.6.33-rc4_dock-without-monitor - booted in the dock, no external monitors connected * v2.6.33-rc4_nodock - booted undocked Next three are the same tests, but the kernel is v2.6.33-rc4 plus cherry-pick of 362928df3d96cab10afa4f048196d7340b708ca8 "drm/i915: Don't use the child device parsed from VBT to setup HDMI/DP". With this patch the problem I reported is fixed. * v2.6.33-rc4+patch_dock * v2.6.33-rc4+patch_dock-without-monitor * v2.6.33-rc4+patch_nodock For all 6 tests the following files is included: dmesg.out intel_reg_dumper.out vbios.dump xrandr-q.out Regards, Pär Andersson
Fixed by commit 6207937d4feea000913e8ca23fe20c7744be7847.