Bug 4695 - asus_acpi module cannot get status of LCD on asus L5D series notebook, causing too much activity in system log
Summary: asus_acpi module cannot get status of LCD on asus L5D series notebook, causin...
Status: REJECTED UNREPRODUCIBLE
Alias: None
Product: Drivers
Classification: Unclassified
Component: Platform (show other bugs)
Hardware: i386 Linux
: P2 high
Assignee: Karol Kozimor
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-06-02 04:56 UTC by Simon Morgan
Modified: 2010-10-08 18:16 UTC (History)
1 user (show)

See Also:
Kernel Version: 2.6.11+
Subsystem:
Regression: ---
Bisected commit-id:


Attachments
fix (1.07 KB, patch)
2006-01-03 05:39 UTC, Karol Kozimor
Details | Diff
DSDT of Asus L5D laptop (116.84 KB, text/plain)
2006-03-22 05:02 UTC, Simon Morgan
Details

Description Simon Morgan 2005-06-02 04:56:46 UTC
Distribution: SuSE 9.3 x86_64
Hardware Environment: Asus L5D series notebook, AMD64
Software Environment: 
Problem Description:
asus_acpi module fills the system log with the message:
"Asus ACPI: Error reading LCD status" becuase it incorrectly defines the L5D
series as the same as L5C.

Steps to reproduce: insert asus_acpi module on L5D machine and read
/var/log/messages.

I have created a simple patch against 2.6.12-rc5 but I'm not sure if it the
".mt_lcd_switch" and ".lcd_status" defines are correct, although it appears to
be more like the L3H I'm probably wrong, however this works for me.

I'm not sure where to submit the patch so this seems as good a place as any. See
also http://forge.novell.com/modules/xfmod/project/?asus-hotkeys

regards,
Simon.

BEGIN ======================================================================

--- linux/drivers/acpi/asus_acpi.c      2005-03-20 15:34:04.000000000 +0000
+++ linux/drivers/acpi/asus_acpi.c      2005-06-02 12:22:41.000000000 +0100
@@ -124,6 +124,7 @@
                L3D,      //L3400D
                L3H,      //L3H, but also L2000E
                L4R,      //L4500R
+               L5D,      //L5000D/DF
                L5x,      //L5800C
                L8L,      //L8400L
                M1A,      //M1300A
@@ -263,6 +264,19 @@
                .display_get       = "\\_SB.PCI0.P0P1.VGA.GETD"
        },

+        {
+                .name              = "L5D",
+                .mt_mled           = "MLED",
+/* WLED present, but not controlled by ACPI */
+/* TLED not present */
+                .mt_lcd_switch     = "EHK",              /* same as L3H */
+                .lcd_status        = "\\_SB.PCI0.PM.PBC", /* same as L3H */
+                .brightness_set    = "SPLV",
+                .brightness_get    = "GPLV",
+                .display_set       = "SDSP",
+                .display_get       = "\\INFB"
+        },
+
        {
                .name              = "L5x",
                .mt_mled           = "MLED",
@@ -622,7 +636,7 @@
 {
        int lcd = 0;

-       if (hotk->model != L3H) {
+       if (hotk->model != L3H && hotk->model != L5D) {
        /* We don't have to check anything if we are here */
                if (!read_acpi_int(NULL, hotk->methods->lcd_status, &lcd))
                        printk(KERN_WARNING "Asus ACPI: Error reading LCD
status\n");
@@ -667,7 +681,7 @@
        lcd = value ? 1 : 0;
        if (lcd != get_lcd_state()) {
                /* switch */
-               if (hotk->model != L3H) {
+               if (hotk->model != L3H && hotk->model != L5D) {
                        status =
                            acpi_evaluate_object(NULL, hotk->methods->mt_lcd_switch,
                                                 NULL, NULL);
@@ -1054,6 +1068,8 @@
                hotk->model = A2x;
        else if (strncmp(model->string.pointer, "J1", 2) == 0)
                hotk->model = S2x;
+       else if (strncmp(model->string.pointer, "L5D", 3) == 0)
+                hotk->model = L5D;
        else if (strncmp(model->string.pointer, "L5", 2) == 0)
                hotk->model = L5x;

END =========================================================================
Comment 1 Shaohua 2005-06-03 00:51:54 UTC
Karol is the right person for asus laptop related issue.
Comment 2 Karol Kozimor 2006-01-03 05:39:24 UTC
Created attachment 6925 [details]
fix

This should suffice. I'll put it in my queue.
BTW: would you mind attaching your DSDT to this bug report? I cat't seem to
find it here.
Comment 3 Simon Morgan 2006-03-22 05:02:44 UTC
Created attachment 7636 [details]
DSDT of Asus L5D laptop

Please note the DSDT with this laptop is buggy (sorry it took so long to get
it, I've been dead busy recently)
Comment 4 Len Brown 2007-08-18 15:05:31 UTC
is this still a problem with 2.6.22.stable?
Comment 5 Fu Michael 2007-09-23 01:39:11 UTC
ping for update again.
Comment 6 Fu Michael 2007-10-29 18:34:53 UTC
mark as unreproducible due to no response. If reopen, please come with need info and action. thanks.

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