The disassembler dumps out the actual code -- including namesegs and namepaths -- as they appear in the AML. I don't want the disassembler changing or embellishing anything, I want to see the original ASL. Bob >-----Original Message----- >From: Len Brown [mailto:lenb@xxxxxxxxxx] >Sent: Wednesday, March 26, 2008 10:29 PM >To: Moore, Robert; linux-acpi@xxxxxxxxxxxxxxx >Cc: aystarik@xxxxxxxxx; Lin, Ming M >Subject: Re: ISA -> ISA_ (Re: [GIT PATCH] ACPI patches for 2.6.25-rc6) > >Bob, >Wouldn't it be less confusing if the dis-assembler >also adding the trailing underscores to match what >is actually done by the interpreter? > >thanks, >-Len > >On Wednesday 26 March 2008, Moore, Robert wrote: >> References, ACPI specification 3.0b: >> >> >> 5.3 ACPI Namespace >> >> By convention, when an ASL compiler pads a name shorter than 4 >> characters, it is done so with trailing underscores ('_'). See the >> language definition for AML NameSeg in Section 16, "ACPI Source Language >> Reference." >> >> (Reference should point to section 18, AML reference) >> >> >> >> 18.2.2 Name Objects Encoding >> >> NameSeg := <LeadNameChar NameChar NameChar NameChar> >> // Notice that NameSegs shorter than 4 characters are filled with >> // trailing underscores ('_'s). >> >> >> >> >> >> -----Original Message----- >> From: Moore, Robert >> Sent: Wednesday, March 26, 2008 6:59 PM >> To: 'Len Brown' >> Cc: 'aystarik@xxxxxxxxx'; Lin, Ming M >> Subject: RE: Re: ISA -> ISA_ (Re: [GIT PATCH] ACPI patches for >> 2.6.25-rc6) >> >> Whenever an ACPI namepath is parsed (each 4 character name within a >> namepath is called a "nameseg"), each nameseg is padded out with >> underscores if it is shorter than 4 characters. This happens whenever a >> named object is created and whenever a reference to a name is >> encountered. >> >> Thus, internally, ALL namesegs are exactly 4 characters, no need to add >> code to handle variable-length namesegs. >> >> Thus, smaller code and fewer bugs. This is also mentioned in the ACPI >> spec somewhere. >> >> Bob >> >> >> Example: >> >> Name (I, 0x1234) >> >> Will be entered into the namespace as >> >> I___ >> >> A reference to I such as >> >> Store (\DEV0\I, Local0) >> >> Will convert "I" to "I___" during AML parsing. >> >> >> >> -----Original Message----- >> From: Len Brown [mailto:lenb@xxxxxxxxxx] >> Sent: Wednesday, March 26, 2008 11:00 AM >> To: Moore, Robert >> Subject: Fwd: Re: ISA -> ISA_ (Re: [GIT PATCH] ACPI patches for >> 2.6.25-rc6) >> >> Bob, >> can you comment on this thread? >> >> thanks, >> -Len >> >> ---------- Forwarded Message ---------- >> >> Subject: Re: ISA -> ISA_ (Re: [GIT PATCH] ACPI patches for 2.6.25-rc6) >> Date: Wednesday 26 March 2008 >> From: Alexey Starikovskiy < aystarik@xxxxxxxxx > >> To: Bjorn Helgaas <bjorn.helgaas@xxxxxx> >> >> Bjorn Helgaas wrote: >> > 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. >> > >> ACPI is supposed to add trailing underscore for pad all names to 4 >> bytes. >> So ISA will be padded to ISA_. >> >> Regards, >> Alex. >> >> ------------------------------------------------------- >> > -- To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html