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

Bjorn Helgaas
2008-03-26T15:52:58Z

On Wednesday 26 March 2008 09:32:20 am Len Brown wrote:
> > /* Here we go */
> > -#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