Bug 14649 - KMS not working as lid is always reported as closed
KMS not working as lid is always reported as closed
Status: RESOLVED CODE_FIX
Product: Drivers
Classification: Unclassified
Component: Video(DRI - Intel)
All Linux
: P1 high
Assigned To: ykzhao
:
Depends on:
Blocks: 13615
  Show dependency treegraph
 
Reported: 2009-11-20 23:00 UTC by Martin Bammer
Modified: 2010-03-25 01:38 UTC (History)
2 users (show)

See Also:
Kernel Version: 2.6.32-rc8-git3
Tree: Mainline
Regression: Yes


Attachments
dmesg output (44.64 KB, application/octet-stream)
2009-11-20 23:00 UTC, Martin Bammer
Details
kernel configuration (96.03 KB, application/octet-stream)
2009-11-20 23:01 UTC, Martin Bammer
Details
lspci output (10.58 KB, text/plain)
2009-11-20 23:02 UTC, Martin Bammer
Details
dmesg output of 2.6.32-rc8-git3 (48.32 KB, text/plain)
2009-12-01 23:42 UTC, Martin Bammer
Details
Output of acpidump (94.01 KB, text/plain)
2009-12-04 05:45 UTC, Martin Bammer
Details
output of dmidecode (9.71 KB, text/plain)
2010-01-29 23:47 UTC, Martin Bammer
Details
try the patch that adds Insyde PC-81005 to ACPI LID quirk list (903 bytes, patch)
2010-02-22 08:22 UTC, ykzhao
Details | Diff

Description Martin Bammer 2009-11-20 23:00:57 UTC
Created attachment 23848 [details]
dmesg output

With this kernel KMS is not working. Last tested and working kernel is 2.6.30.9.
This bug is similar to 14554.
Comment 1 Martin Bammer 2009-11-20 23:01:48 UTC
Created attachment 23849 [details]
kernel configuration
Comment 2 Martin Bammer 2009-11-20 23:02:57 UTC
Created attachment 23850 [details]
lspci output
Comment 3 Martin Bammer 2009-12-01 23:42:59 UTC
Created attachment 23989 [details]
dmesg output of 2.6.32-rc8-git3

I've compiled the latest kernel with some debugging options enabled for drm and
acpi. The log shows, that the kms problem comes from acpi. The lid is detected
as "closed" and no external vga monitor is connected. A closed lid leads to
"LVDS-1 is disconnected". "VGA-1 is disconnected" and "LVDS-1 is disconnected"
leads to "No connectors reported connected with modes" and then kms fails.
Comment 4 Martin Bammer 2009-12-02 16:22:18 UTC
I've commented out in file i915/intel_lvds.c in function intel_lvds_detect the following 2 lines:
    if (!acpi_lid_open() && !dmi_check_system(bad_lid_status))
        status = connector_status_disconnected;

KMS is now working again. lid problem in acpi is still present.
Comment 5 Jesse Barnes 2009-12-02 19:31:58 UTC
Is your lid always wrong?  We might need to add a quirk for your system...  Yakui will probably ask for a DSDT dump.
Comment 6 Jesse Barnes 2009-12-02 19:32:24 UTC
Yakui, can you take a look?
Comment 7 Martin Bammer 2009-12-04 05:45:46 UTC
Created attachment 24008 [details]
Output of acpidump

Yes, the lid problem is present with all kernels I used.
Currently I'm using kernel 2.6.30.9 and the lid state is always closed.
Comment 8 ykzhao 2009-12-28 16:11:10 UTC
Hi, Martin
    Will you please attach the output of dmidecode on your box?
   
thanks.
Comment 9 ykzhao 2009-12-28 16:14:12 UTC
Hi, Martin
    
    will you please add the boot option of "nomodeset" and attach the following output after the system is booted?
    > cat /proc/acpi/button/lid/LID/state

   Thanks.
Comment 10 Martin Bammer 2010-01-15 10:09:03 UTC
I've currently tested it with kernel 2.6.32.3 and "nomodeset".
The result ist the same. Always read as closed.
The strange thing is that an event is emmitted when I close the lid, but the state is always the same.
Comment 11 ykzhao 2010-01-17 12:47:02 UTC
Please attach the output of dmidecode on your box.

Thanks.
Comment 12 Martin Bammer 2010-01-29 23:47:14 UTC
Created attachment 24783 [details]
output of dmidecode
Comment 13 ykzhao 2010-02-22 08:22:09 UTC
Created attachment 25157 [details]
try the patch that adds Insyde PC-81005 to ACPI LID quirk list

will you please try the attached patch and see whether it can work for you?

Thanks.
Comment 14 Martin Bammer 2010-02-25 22:13:11 UTC
Yes this seems to fix the problem. Thnx. Tested with 2.6.32.9.
Comment 15 ykzhao 2010-03-25 01:38:17 UTC
Now the mechanism of LVDS detection by using LID is abandoned in the following commit:
   >commit 6e6c822868f113dabe3c33bdd91e883cc28fa11b
Author: Eric Anholt <eric@anholt.net>
Date:   Wed Mar 17 13:48:06 2010 -0700

    drm/i915: Stop trying to use ACPI lid status to determine LVDS connection.

So the lid quirk is not needed any more. And this bug will be marked as resolved.

Thanks.

Note You need to log in before you can comment on or make changes to this bug.