Skip to contentSkip to conversation

ACPI patches for 2.6.25-rc6

PATCH In review Len Brown 6 participants 16 messages Mar 18, 2008 – Mar 26, 2008 ACPI

lore
Share & tools
lore

Len Brown

author reviewer
#0 lore raw

PATCH 1/1 ACPI patches for 2.6.25-rc6

Hi Linus,

please pull from:

git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6.git release

This will update the files shown below.

thanks!

-Len

ps. individual patches are available on [email protected]
and a consolidated plain patch is available here:
ftp://ftp.kernel.org/pub/linux/kernel/people/lenb/acpi/patches/release/2.6.25/acpi-release-20070126-2.6.25-rc6.diff.gz

 drivers/acpi/asus_acpi.c      |    2 +-
 drivers/acpi/battery.c        |   11 +--
 drivers/acpi/processor_idle.c |   12 ++-
 drivers/acpi/video.c          |   60 +--------------
 drivers/ata/Kconfig           |    1 +
 drivers/thermal/Kconfig       |    2 -
 drivers/thermal/thermal.c     |  169 ++++++----------------------------------
 7 files changed, 43 insertions(+), 214 deletions(-)

through these commits:

Alexey Starikovskiy (1):
ACPI: battery: Don't return -EFAIL on broken packages.

Julia Lawall (1):
asus_acpi: remove misleading mask

Len Brown (5):
ACPI: fix ATA_ACPI build
Revert "thermal: fix generic thermal I/F for hwmon"
thermal: delete "default y"
Revert "ACPI: video: Ignore ACPI video devices that aren't present in hardware" Revert "ACPI: video: Ignore devices that aren't present in hardware"

Venki Pallipadi (1):
ACPI: lockdep warning on boot, 2.6.25-rc5

Zhang, Rui (1):
thermal: re-document thermal units

with this log:

commit d9ea1364d37b53710519909ab125a53b0a8ca64f
Merge: abc5a87... b8a1bdb... 77321e6... 0ac4a3c... 71e93d1... ece54e2...
Author: Len Brown <[email protected]>
Date: Tue Mar 18 04:52:57 2008 -0400

    Merge branches 'release', 'asus', 'bugzilla-8573', 'bugzilla-9995', 'bugzilla-10272', 'lockdep' and 'thermal' into release

commit 77321e624b64f1e5985a20f3cd16b94c96d0dbb4

Author: Len Brown <[email protected]>
Date:   Tue Mar 18 04:04:35 2008 -0400

Revert "ACPI: video: Ignore devices that aren't present in hardware"

This reverts commit 0119509c4fbc9adcef1472817fda295334612976.

http://bugzilla.kernel.org/show_bug.cgi?id=9995

commit abc5a87f4e627e058813a95b112e9f5f21668f9d

Author: Julia Lawall <[email protected]>
Date:   Tue Mar 4 15:00:13 2008 -0800

asus_acpi: remove misleading mask

led_out is boolean, so there is no functional change here, but apparently an extra mask with 1 caused some style checkers to flag this as logic bug.

commit f0d6752c9fa51d24c86b57c76ec5b2926a716b23

Author: Len Brown <[email protected]>
Date:   Tue Mar 18 01:43:53 2008 -0400

Revert "ACPI: video: Ignore ACPI video devices that aren't present in hardware"

This reverts commit 3fa2cdcc45a0176de15cac9dbf4ed2834ebf8932.

http://bugzilla.kernel.org/show_bug.cgi?id=9995

Signed-off-by Len Brown <len.brown>

commit ece54e2ff45062852e4647e85b2bb5f6aee8211c

Author: Len Brown <[email protected]>
Date:   Tue Mar 18 01:22:10 2008 -0400

thermal: delete "default y"

The generic thermal I/F gets selected by ACPI_THERMAL -- its only current customer.
it doesn't need to clutter other configs by default.

commit 6d7f014e55c5227220da1f021c518487fcfd585a

Author: Zhang, Rui <[email protected]>
Date:   Tue Mar 18 10:40:29 2008 +0800

thermal: re-document thermal units
From: Zhang Rui <[email protected]>

(reverting the previous sysfs patch also reverted a fix
to the thermal units documentation, which is restored by this commit)

The generic thermal driver shows temperature in millidegree Celsius.

commit 91f57fa1215952af579f304821a15cc6c656042c

Author: Len Brown <[email protected]>
Date:   Tue Mar 18 01:14:37 2008 -0400

Revert "thermal: fix generic thermal I/F for hwmon"

This reverts commit 3152fb9f11cdd2fd8688c2c5cb805e5c09b53dd9.

This broke libsensors.

commit 0ac4a3c2fbbcadc3e96e4dc47d4ae802d66e6f67

Author: Len Brown <[email protected]>
Date:   Tue Mar 18 00:26:07 2008 -0400

ACPI: fix ATA_ACPI build

drivers/ata/libata-acpi.c fails to build

drivers/built-in.o: In function `ata_acpi_associate':
(.text+0x7106a): undefined reference to `register_hotplug_dock_device'

When CONFIG_ATA_ACPI=y and CONFIG_ACPI_DOCK=m But if dock is selected from ata_acpi, dock will =y when ata_acpi=y, avoiding this problem.

http://bugzilla.kernel.org/show_bug.cgi?id=10272

commit b8a1bdb14940946fcf0438a6337b2a6c54294fb8

Author: Alexey Starikovskiy <[email protected]>
Date:   Mon Mar 17 22:37:42 2008 -0400

ACPI: battery: Don't return -EFAIL on broken packages.

Acer BIOS has a bug which is exposed when a dead battery is present.

The package template that is used to describe battery status is over-written with sane values when the battery is live. But when the batter is dead, a bogus reference in the template is used. In this case, Linux returns a fault, when instead it should simply return that it doesn't know the missing value.

http://bugzilla.kernel.org/show_bug.cgi?id=8573
http://bugzilla.kernel.org/show_bug.cgi?id=10202

commit 71e93d15612c61c2e26a169567becf088e71b8ff

Author: Venki Pallipadi <[email protected]>
Date:   Thu Mar 13 17:18:19 2008 -0700
    ACPI: lockdep warning on boot, 2.6.25-rc5
    
    This avoids the harmless WARNING by lockdep in acpi_processor_idle().
    
    The reason for WARNING is because at the depth of idle handling code,
    some of the idle handlers disable interrupts, some times, while returning from
    the idle handler. After return, acpi_processor_idle and few other routines
    in the file did an unconditional local_irq_enable(). With LOCKDEP, enabling
    irq when it is already enabled generates the below WARNING.
    
    > > [    0.593038] ------------[ cut here ]------------
    > > [    0.593267] WARNING: at kernel/lockdep.c:2035 trace_hardirqs_on+0xa0/0x115()
    > > [    0.593596] Modules linked in:
    > > [    0.593756] Pid: 0, comm: swapper Not tainted 2.6.25-rc5 #8
    > > [    0.594017]
    > > [    0.594017] Call Trace:
    > > [    0.594216]  [<ffffffff80231663>] warn_on_slowpath+0x58/0x6b
    > > [    0.594495]  [<ffffffff80495966>] ? _spin_unlock_irqrestore+0x38/0x47
    > > [    0.594809]  [<ffffffff80329a86>] ? acpi_os_release_lock+0x9/0xb
    > > [    0.595103]  [<ffffffff80337840>] ? acpi_set_register+0x161/0x173
    > > [    0.595401]  [<ffffffff8034c8d4>] ? acpi_processor_idle+0x1de/0x546
    > > [    0.595706]  [<ffffffff8020a23b>] ? default_idle+0x0/0x73
    > > [    0.595970]  [<ffffffff8024fc0e>] trace_hardirqs_on+0xa0/0x115
    > > [    0.596049]  [<ffffffff8034c6f6>] ? acpi_processor_idle+0x0/0x546
    > > [    0.596346]  [<ffffffff8034c8d4>] acpi_processor_idle+0x1de/0x546
    > > [    0.596642]  [<ffffffff8020a23b>] ? default_idle+0x0/0x73
    > > [    0.596912]  [<ffffffff8034c6f6>] ? acpi_processor_idle+0x0/0x546
    > > [    0.597209]  [<ffffffff8020a23b>] ? default_idle+0x0/0x73
    > > [    0.597472]  [<ffffffff8020a355>] cpu_idle+0xa7/0xd1
    > > [    0.597717]  [<ffffffff80485fa1>] rest_init+0x55/0x57
    > > [    0.597957]  [<ffffffff8062fb49>] start_kernel+0x29d/0x2a8
    > > [    0.598215]  [<ffffffff8062f1da>] _sinittext+0x1da/0x1e1
    > > [    0.598464]
    > > [    0.598546] ---[ end trace 778e504de7e3b1e3 ]---
    
    Signed-off-by: Venkatesh Pallipadi <[email protected]>
    Signed-off-by: Len Brown <[email protected]>
#1 lore raw
Quoted 7 lines · Len Brown

Hi Linus,

please pull from:

git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6.git release

This will update the files shown below.

btw., saw this ACPI-ish commit in rc7:

| commit b97d4803400a4442b0e4ae14d0bd8e83994b9004
| Author: Bjorn Helgaas <[email protected]>
| Date:   Tue Mar 25 11:21:11 2008 -0600
|
|    ACPI: fix Medion _PRT quirk (use "ISA_", not "ISA")

a grep shows that we've got one other case of an "ISA" string in the ACPI code - is the patch below needed too?

Ingo

-------------------->
Subject: acpi: fix asus isa
From: Ingo Molnar <[email protected]>
Date: Wed Mar 26 09:05:07 CET 2008

---
 drivers/acpi/asus_acpi.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/acpi/asus_acpi.c +1 -1
Index: linux-x86.q/drivers/acpi/asus_acpi.c
===================================================================
@@ -149,7 +149,7 @@ struct asus_hotk {
 };
 
 /* Here we go */
-#define A1x_PREFIX "\\_SB.PCI0.ISA.EC0."
+#define A1x_PREFIX "\\_SB.PCI0.ISA_.EC0."
 #define L3C_PREFIX "\\_SB.PCI0.PX40.ECD0."
 #define M1A_PREFIX "\\_SB.PCI0.PX40.EC0."
 #define P30_PREFIX "\\_SB.PCI0.LPCB.EC0."
#2 lore raw
In reply to Len Brown
Quoted 7 lines · Len Brown

Hi Linus,

please pull from:

git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6.git release

This will update the files shown below.

btw., saw this ACPI-ish commit in rc7:

| commit b97d4803400a4442b0e4ae14d0bd8e83994b9004
| Author: Bjorn Helgaas <[email protected]>
| Date:   Tue Mar 25 11:21:11 2008 -0600
|
|    ACPI: fix Medion _PRT quirk (use "ISA_", not "ISA")

a grep shows that we've got one other case of an "ISA" string in the ACPI code - is the patch below needed too?

Ingo

-------------------->
Subject: acpi: fix asus isa
From: Ingo Molnar <[email protected]>
Date: Wed Mar 26 09:05:07 CET 2008

---
 drivers/acpi/asus_acpi.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/acpi/asus_acpi.c +1 -1
Index: linux-x86.q/drivers/acpi/asus_acpi.c
===================================================================
@@ -149,7 +149,7 @@ struct asus_hotk {
 };
 
 /* Here we go */
-#define A1x_PREFIX "\\_SB.PCI0.ISA.EC0."
+#define A1x_PREFIX "\\_SB.PCI0.ISA_.EC0."
 #define L3C_PREFIX "\\_SB.PCI0.PX40.ECD0."
 #define M1A_PREFIX "\\_SB.PCI0.PX40.EC0."
 #define P30_PREFIX "\\_SB.PCI0.LPCB.EC0."
author reviewer
#3 lore raw

ISA -> ISA_ (Re: [GIT PATCH] ACPI patches for 2.6.25-rc6)

Quoted 35 lines

btw., saw this ACPI-ish commit in rc7:

| commit b97d4803400a4442b0e4ae14d0bd8e83994b9004
| Author: Bjorn Helgaas <[email protected]>
| Date:   Tue Mar 25 11:21:11 2008 -0600
|
|    ACPI: fix Medion _PRT quirk (use "ISA_", not "ISA")

a grep shows that we've got one other case of an "ISA" string in the ACPI code - is the patch below needed too?

Ingo

-------------------->
Subject: acpi: fix asus isa
From: Ingo Molnar <[email protected]>
Date: Wed Mar 26 09:05:07 CET 2008

---
 drivers/acpi/asus_acpi.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Index: linux-x86.q/drivers/acpi/asus_acpi.c
===================================================================

drivers/acpi/asus_acpi.c +1 -1
@@ -149,7 +149,7 @@ struct asus_hotk {
 };
 
 /* Here we go */
-#define A1x_PREFIX "\\_SB.PCI0.ISA.EC0."
+#define A1x_PREFIX "\\_SB.PCI0.ISA_.EC0."
 
Quoted 1 line

From an AML point of view, ISA is just as legal as "ISA_"

The NameString paramter to Device() can be 1 to 4 characters.

So if this is correct or not depends on what the BIOS programmer for the Asus A1x choose to write. Perhaps Corentin 'Iksaif' CHARY can confirm if the driver is working properly on that system.

-Len

Quoted 4 lines

#define L3C_PREFIX "\\_SB.PCI0.PX40.ECD0."
#define M1A_PREFIX "\\_SB.PCI0.PX40.EC0."
#define P30_PREFIX "\\_SB.PCI0.LPCB.EC0."

author reviewer
#4 lore raw

ISA -> ISA_ (Re: [GIT PATCH] ACPI patches for 2.6.25-rc6)

In reply to Ingo Molnar
Quoted 35 lines

btw., saw this ACPI-ish commit in rc7:

| commit b97d4803400a4442b0e4ae14d0bd8e83994b9004
| Author: Bjorn Helgaas <[email protected]>
| Date:   Tue Mar 25 11:21:11 2008 -0600
|
|    ACPI: fix Medion _PRT quirk (use "ISA_", not "ISA")

a grep shows that we've got one other case of an "ISA" string in the ACPI code - is the patch below needed too?

Ingo

-------------------->
Subject: acpi: fix asus isa
From: Ingo Molnar <[email protected]>
Date: Wed Mar 26 09:05:07 CET 2008

---
 drivers/acpi/asus_acpi.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Index: linux-x86.q/drivers/acpi/asus_acpi.c
===================================================================

drivers/acpi/asus_acpi.c +1 -1
@@ -149,7 +149,7 @@ struct asus_hotk {
 };
 
 /* Here we go */
-#define A1x_PREFIX "\\_SB.PCI0.ISA.EC0."
+#define A1x_PREFIX "\\_SB.PCI0.ISA_.EC0."
 
Quoted 1 line

From an AML point of view, ISA is just as legal as "ISA_"

The NameString paramter to Device() can be 1 to 4 characters.

So if this is correct or not depends on what the BIOS programmer for the Asus A1x choose to write. Perhaps Corentin 'Iksaif' CHARY can confirm if the driver is working properly on that system.

-Len

Quoted 4 lines

#define L3C_PREFIX "\\_SB.PCI0.PX40.ECD0."
#define M1A_PREFIX "\\_SB.PCI0.PX40.EC0."
#define P30_PREFIX "\\_SB.PCI0.LPCB.EC0."

#5 lore raw

Re: ISA -> ISA_ (Re: [GIT PATCH] ACPI patches for 2.6.25-rc6)

Quoted 3 lines · On Wednesday 26 March 2008 16:32:20 Len Brown wrote:

So if this is correct or not depends on what the BIOS programmer for the Asus A1x choose to write.  Perhaps Corentin 'Iksaif' CHARY can confirm if the driver is working properly on that system.

Hi,
Sorry I don't have an A1x to test that, and this was here a long time before I start working on acpi4asus. But, see that grep :

chary_c@foo /usr/src/linux/drivers/misc $ grep ISA *
asus-laptop.c: "\\_SB.PCI0.ISA.EC0._Q10", /* A1x */
thinkpad_acpi.c:IBM_HANDLE(ec, root, "\\_SB.PCI0.ISA.EC0", /* 240, 240x */

thinkpad_acpi.c:           "\\_SB.PCI.ISA.EC",  /* 570 */
thinkpad_acpi.c:           "\\_SB.PCI0.ISA0.EC0",       /* 600e/x, 770e, 770x */
thinkpad_acpi.c:           "\\_SB.PCI0.ISA.EC", /* A21e, A2xm/p, T20-22, X20-21 */
thinkpad_acpi.c:           "\\_SB.PCI.ISA.SLCE",        /* 570 */

So it seems to work for thinkpads.
I think this patch isn't needed.

Signature · 2 lines
Corentin 'Iksaif' CHARY
http://xf.iksaif.net
#6 lore raw

Re: ISA -> ISA_ (Re: [GIT PATCH] ACPI patches for 2.6.25-rc6)

In reply to Len Brown
Quoted 3 lines · On Wednesday 26 March 2008 16:32:20 Len Brown wrote:

So if this is correct or not depends on what the BIOS programmer for the Asus A1x choose to write.  Perhaps Corentin 'Iksaif' CHARY can confirm if the driver is working properly on that system.

Hi,
Sorry I don't have an A1x to test that, and this was here a long time before I start working on acpi4asus. But, see that grep :

chary_c@foo /usr/src/linux/drivers/misc $ grep ISA *
asus-laptop.c: "\\_SB.PCI0.ISA.EC0._Q10", /* A1x */
thinkpad_acpi.c:IBM_HANDLE(ec, root, "\\_SB.PCI0.ISA.EC0", /* 240, 240x */

thinkpad_acpi.c:           "\\_SB.PCI.ISA.EC",  /* 570 */
thinkpad_acpi.c:           "\\_SB.PCI0.ISA0.EC0",       /* 600e/x, 770e, 770x */
thinkpad_acpi.c:           "\\_SB.PCI0.ISA.EC", /* A21e, A2xm/p, T20-22, X20-21 */
thinkpad_acpi.c:           "\\_SB.PCI.ISA.SLCE",        /* 570 */

So it seems to work for thinkpads.
I think this patch isn't needed.

Signature · 6 lines
Corentin 'Iksaif' CHARY
http://xf.iksaif.net
--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
#7 lore raw

Re: ISA -> ISA_ (Re: [GIT PATCH] ACPI patches for 2.6.25-rc6)

Quoted 7 lines · Corentin CHARY

thinkpad_acpi.c:IBM_HANDLE(ec, root, "\\_SB.PCI0.ISA.EC0", /* 240, 240x */

thinkpad_acpi.c:           "\\_SB.PCI.ISA.EC",  /* 570 */
thinkpad_acpi.c:           "\\_SB.PCI0.ISA0.EC0",       /* 600e/x, 770e, 770x */
thinkpad_acpi.c:           "\\_SB.PCI0.ISA.EC", /* A21e, A2xm/p, T20-22, X20-21 */
thinkpad_acpi.c:           "\\_SB.PCI.ISA.SLCE",        /* 570 */

So it seems to work for thinkpads.

ThinkPads use "ISA" as the node (not ISA_ or anything else like that), and the ACPICA node match routine works properly.

So please don't touch thinkpad-acpi's ".ISA." stuff.

Signature · 4 lines
  "One disk to rule them all, One disk to find them. One disk to bring
  them all and in the darkness grind them. In the Land of Redmond
  where the shadows lie." -- The Silicon Valley Tarot
  Henrique Holschuh
#8 lore raw

Re: ISA -> ISA_ (Re: [GIT PATCH] ACPI patches for 2.6.25-rc6)

In reply to Len Brown
Quoted 10 lines · Len Brown

drivers/acpi/asus_acpi.c struct asus_hotk { · line 152

Quoted 3 lines

/* Here we go */

drivers/acpi/asus_acpi.c +1 -1
-#define A1x_PREFIX "\\_SB.PCI0.ISA.EC0."
+#define A1x_PREFIX "\\_SB.PCI0.ISA_.EC0."

From an AML point of view, ISA is just as legal as "ISA_" The NameString paramter to Device() can be 1 to 4 characters.

So if this is correct or not depends on what the BIOS programmer for the Asus A1x choose to write. Perhaps Corentin 'Iksaif' CHARY can confirm if the driver is working properly on that system.

I'm curious about how this works. I disassembled the DSDT from
http://bugzilla.kernel.org/show_bug.cgi?id=4773 (I attached the disassembly at http://bugzilla.kernel.org/attachment.cgi?id=15448&action=view), and the _PRT contains "_SB" and "ISA" (no trailing underscores):

                Package (0x04)
                {
                    0x000DFFFF, 
                    0x00, 
                    \_SB.PCI0.ISA.LNKA, 
                    0x00
                }

But by the time we get to acpi_pci_irq_add_entry(), we've added the underscores somewhere (see
http://bugzilla.kernel.org/attachment.cgi?id=15423&action=view):

0000:00:0d[A] -> \_SB_.PCI0.ISA_.LNKA

I don't know where this happens, but it certainly confused me, and it seems like it could lead to other bugs.

Bjorn

#9 lore raw

Re: ISA -> ISA_ (Re: [GIT PATCH] ACPI patches for 2.6.25-rc6)

Quoted 13 lines · Bjorn Helgaas

I'm curious about how this works. I disassembled the DSDT from
http://bugzilla.kernel.org/show_bug.cgi?id=4773 (I attached the disassembly at http://bugzilla.kernel.org/attachment.cgi?id=15448&action=view), and the _PRT contains "_SB" and "ISA" (no trailing underscores):

                Package (0x04)
                {
                    0x000DFFFF, 
                    0x00, 
                    \_SB.PCI0.ISA.LNKA, 
                    0x00
                }
Quoted 9 lines

But by the time we get to acpi_pci_irq_add_entry(), we've added the underscores somewhere (see
http://bugzilla.kernel.org/attachment.cgi?id=15423&action=view):

0000:00:0d[A] -> \_SB_.PCI0.ISA_.LNKA

I don't know where this happens, but it certainly confused me, and it seems like it could lead to other bugs.

ACPI is supposed to add trailing underscore for pad all names to 4 bytes. So ISA will be padded to ISA_.

Regards,
Alex.

#10 lore raw

Re: ISA -> ISA_ (Re: [GIT PATCH] ACPI patches for 2.6.25-rc6)

In reply to Bjorn Helgaas
Quoted 13 lines · Bjorn Helgaas

I'm curious about how this works. I disassembled the DSDT from
http://bugzilla.kernel.org/show_bug.cgi?id=4773 (I attached the disassembly at http://bugzilla.kernel.org/attachment.cgi?id=15448&action=view), and the _PRT contains "_SB" and "ISA" (no trailing underscores):

                Package (0x04)
                {
                    0x000DFFFF, 
                    0x00, 
                    \_SB.PCI0.ISA.LNKA, 
                    0x00
                }
Quoted 9 lines

But by the time we get to acpi_pci_irq_add_entry(), we've added the underscores somewhere (see
http://bugzilla.kernel.org/attachment.cgi?id=15423&action=view):

0000:00:0d[A] -> \_SB_.PCI0.ISA_.LNKA

I don't know where this happens, but it certainly confused me, and it seems like it could lead to other bugs.

ACPI is supposed to add trailing underscore for pad all names to 4 bytes. So ISA will be padded to ISA_.

Regards,
Alex.

#11 lore raw

Re: ISA -> ISA_ (Re: [GIT PATCH] ACPI patches for 2.6.25-rc6)

Quoted 18 lines · Alexey Starikovskiy
Quoted 17 lines · Bjorn Helgaas

I'm curious about how this works. I disassembled the DSDT from
http://bugzilla.kernel.org/show_bug.cgi?id=4773 (I attached the disassembly at http://bugzilla.kernel.org/attachment.cgi?id=15448&action=view), and the _PRT contains "_SB" and "ISA" (no trailing underscores):

                Package (0x04)
                {
                    0x000DFFFF, 
                    0x00, 
                    \_SB.PCI0.ISA.LNKA, 
                    0x00
                }

But by the time we get to acpi_pci_irq_add_entry(), we've added the underscores somewhere (see
http://bugzilla.kernel.org/attachment.cgi?id=15423&action=view):

Quoted 7 lines
Quoted 5 lines

0000:00:0d[A] -> \_SB_.PCI0.ISA_.LNKA

I don't know where this happens, but it certainly confused me, and it seems like it could lead to other bugs.

ACPI is supposed to add trailing underscore for pad all names to 4 bytes. So ISA will be padded to ISA_.

The questions are "where does this happen?" and "why does it not apply to other things like asus_acpi.c?"

#12 lore raw

Re: ISA -> ISA_ (Re: [GIT PATCH] ACPI patches for 2.6.25-rc6)

Quoted 27 lines · Bjorn Helgaas
Quoted 25 lines · Alexey Starikovskiy
Quoted 23 lines · Bjorn Helgaas

I'm curious about how this works. I disassembled the DSDT from
http://bugzilla.kernel.org/show_bug.cgi?id=4773 (I attached the disassembly at http://bugzilla.kernel.org/attachment.cgi?id=15448&action=view), and the _PRT contains "_SB" and "ISA" (no trailing underscores):

                Package (0x04)
                {
                    0x000DFFFF, 
                    0x00, 
                    \_SB.PCI0.ISA.LNKA, 
                    0x00
                }

But by the time we get to acpi_pci_irq_add_entry(), we've added the underscores somewhere (see
http://bugzilla.kernel.org/attachment.cgi?id=15423&action=view):

0000:00:0d[A] -> \_SB_.PCI0.ISA_.LNKA

I don't know where this happens, but it certainly confused me, and it seems like it could lead to other bugs.

Quoted 7 lines
Quoted 3 lines

ACPI is supposed to add trailing underscore for pad all names to 4 bytes. So ISA will be padded to ISA_.

The questions are "where does this happen?" and "why does it not apply to other things like asus_acpi.c?"

1. drivers/acpi/namespace/nsutils.c:419

#13 lore raw

Re: ISA -> ISA_ (Re: [GIT PATCH] ACPI patches for 2.6.25-rc6)

In reply to Bjorn Helgaas
Quoted 27 lines · Bjorn Helgaas
Quoted 25 lines · Alexey Starikovskiy
Quoted 23 lines · Bjorn Helgaas

I'm curious about how this works. I disassembled the DSDT from
http://bugzilla.kernel.org/show_bug.cgi?id=4773 (I attached the disassembly at http://bugzilla.kernel.org/attachment.cgi?id=15448&action=view), and the _PRT contains "_SB" and "ISA" (no trailing underscores):

                Package (0x04)
                {
                    0x000DFFFF, 
                    0x00, 
                    \_SB.PCI0.ISA.LNKA, 
                    0x00
                }

But by the time we get to acpi_pci_irq_add_entry(), we've added the underscores somewhere (see
http://bugzilla.kernel.org/attachment.cgi?id=15423&action=view):

0000:00:0d[A] -> \_SB_.PCI0.ISA_.LNKA

I don't know where this happens, but it certainly confused me, and it seems like it could lead to other bugs.

Quoted 7 lines
Quoted 3 lines

ACPI is supposed to add trailing underscore for pad all names to 4 bytes. So ISA will be padded to ISA_.

The questions are "where does this happen?" and "why does it not apply to other things like asus_acpi.c?"

1. drivers/acpi/namespace/nsutils.c:419

#14 lore raw

Re: ISA -> ISA_ (Re: [GIT PATCH] ACPI patches for 2.6.25-rc6)

In reply to Alexey Starikovskiy
Quoted 18 lines · Alexey Starikovskiy
Quoted 17 lines · Bjorn Helgaas

I'm curious about how this works. I disassembled the DSDT from
http://bugzilla.kernel.org/show_bug.cgi?id=4773 (I attached the disassembly at http://bugzilla.kernel.org/attachment.cgi?id=15448&action=view), and the _PRT contains "_SB" and "ISA" (no trailing underscores):

                Package (0x04)
                {
                    0x000DFFFF, 
                    0x00, 
                    \_SB.PCI0.ISA.LNKA, 
                    0x00
                }

But by the time we get to acpi_pci_irq_add_entry(), we've added the underscores somewhere (see
http://bugzilla.kernel.org/attachment.cgi?id=15423&action=view):

Quoted 7 lines
Quoted 5 lines

0000:00:0d[A] -> \_SB_.PCI0.ISA_.LNKA

I don't know where this happens, but it certainly confused me, and it seems like it could lead to other bugs.

ACPI is supposed to add trailing underscore for pad all names to 4 bytes. So ISA will be padded to ISA_.

The questions are "where does this happen?" and "why does it not apply to other things like asus_acpi.c?"

#15 lore raw

Re: ISA -> ISA_ (Re: [GIT PATCH] ACPI patches for 2.6.25-rc6)

In reply to Len Brown
Quoted 10 lines · Len Brown

drivers/acpi/asus_acpi.c struct asus_hotk { · line 152

Quoted 3 lines

/* Here we go */

drivers/acpi/asus_acpi.c +1 -1
-#define A1x_PREFIX "\\_SB.PCI0.ISA.EC0."
+#define A1x_PREFIX "\\_SB.PCI0.ISA_.EC0."

From an AML point of view, ISA is just as legal as "ISA_" The NameString paramter to Device() can be 1 to 4 characters.

So if this is correct or not depends on what the BIOS programmer for the Asus A1x choose to write. Perhaps Corentin 'Iksaif' CHARY can confirm if the driver is working properly on that system.

I'm curious about how this works. I disassembled the DSDT from
http://bugzilla.kernel.org/show_bug.cgi?id=4773 (I attached the disassembly at http://bugzilla.kernel.org/attachment.cgi?id=15448&action=view), and the _PRT contains "_SB" and "ISA" (no trailing underscores):

                Package (0x04)
                {
                    0x000DFFFF, 
                    0x00, 
                    \_SB.PCI0.ISA.LNKA, 
                    0x00
                }

But by the time we get to acpi_pci_irq_add_entry(), we've added the underscores somewhere (see
http://bugzilla.kernel.org/attachment.cgi?id=15423&action=view):

0000:00:0d[A] -> \_SB_.PCI0.ISA_.LNKA

I don't know where this happens, but it certainly confused me, and it seems like it could lead to other bugs.

Bjorn