We are using Notebooks of Type Thinkpad R51. When booting the NB with its lid open, both displays - the internal panel and the external LC-Display - show the X11 content after starting X11. All is fine. When booting the NB with its lid closed and later on opening the lid nothing is displayed on the internal panel, it remains dark. The backlight is switched on when opening. So it seems the BIOS makes some init when the lid is open on boot which is missing in the other case. The interesting part is that this worked with a snapshot of the driver from 12/23/2006: With this driver we could boot the notebook with lid closed and the internal panel was usable after opening the lid. Appended are the log-files for both cases - booted with lid open and booted with lid closed and the output of xrandr which shows the same output in both cases.
Created attachment 11386 [details] Log file when Notebook booted with lid closed
Created attachment 11387 [details] Log file when Notebook booted with lid open
Created attachment 11388 [details] output of xrandr --verbose, same in both cases
Can you dump the contents of LVDS_GEN_CNTL and LVDS_PLL_CNTL using radeontool in each instance? When the laptop boots with the lid closed the bios probably doesn't init the all of the panel regs correctly. Unfortunately, we rely on the bios for some of that as each panel may need slightly different settings for the bits in question; as such we don't set those bits explicitly in the driver.
Dumping the register content of LVDS_GEN_CNTL and LVDS_PLL_CNTL in the different cases gives the following results: Old driver (git from 12/06) has the same value in both registers when booted with lid open and booted with lid closed: on boot (same value in both cases): LVDS_GEN_CNTL (02d0) 0x003dffa5 LVDS_PLL_CNTL (02d4) 0x0001128a ...and the was ok. Current git gives the following: Boot with lid open: - only internal display active LVDS_GEN_CNTL (02d0) 0x003dffa5 LVDS_PLL_CNTL (02d4) 0x0001328a - only external display active LVDS_GEN_CNTL (02d0) 0x0035ffa6 LVDS_PLL_CNTL (02d4) 0x0001328a Boot with lid closed - lid closed LVDS_GEN_CNTL (02d0) 0x003dffa5 LVDS_PLL_CNTL (02d4) 0x0001128a - lid open LVDS_GEN_CNTL (02d0) 0x003dffa5 LVDS_PLL_CNTL (02d4) 0x0001128a Unfortunately the obvious solution (executing radeontool regset LVDS_PLL_CNTL 0x0001328a) does not work - the internal displays remains dark. Maybe this is too late when setting this "manually". Can you give some hint where in the driver the regset should be placed? Then I will try further.
Can you try again with latest ati git master?
I tried with git from today and unfortunately it did not work, the behaviour is unchanged. But thanks for your efforts!
can you get me a reg dump (radeontool regmatch '*') from the old working driver and the current git driver when booted with the lid closed?
Sure, please find attached register dump with driver from git around 12/23/06 Boot with lid open: - only internal display active -> registers-old-boot_lid_opened-only_LVDS_active.txt - only external display active -> registers-old-boot_lid_opened-only_DVI_active.txt Boot with lid closed - lid closed -> registers-old-boot_lid_closed-now_lid_closed.txt - lid open -> registers-old-boot_lid_closed-now_lid_opened.txt register dump with driver from git around 09/13/07 Boot with lid closed -> registers-git-boot_lid_closed.txt
Created attachment 11695 [details] Boot with lid closed, lid closed
Created attachment 11696 [details] Boot with lid closed, lid opened
Created attachment 11697 [details] Boot with lid open, then only DVI active
Created attachment 11698 [details] Boot with lid open, then LVDS active
Created attachment 11699 [details] current git, boot with lid closed
We tried with latest git (yesterday) and this bug seems to be fixed.
Excellent. I did make some changes to LVDS_PLL_CNTL, so that may have done the trick.
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.