ACPI device names
Posted: Tue Oct 01, 2013 4:20 pm
So I'm enumerating the acpi devices under my kernel and have a hard time figuring out the naming of the devices and what they represent. Apparently this changes from bios to bios but there still seems to be a bit of a standard (which I cannot seem to find).
Specifically I'm trying to identify what pci bus, device and function is associated with a acpi device under the pci root bridge (PCI0)
For example.
I have
P0P2.BMD0.BPD0
P0P2.BMD0.BPD1
P0P2.BMD0.BPD2
POP2 disassembles as follows on my test box...I understand this is a PCI bridge but what standard tells me that this is in fact a pci bridge other than the name?
I understand that the _ADR tells me that the device is 2.
then this... BMD0 which I have *no idea* what it is.
Followed by BPD0 & 1 & 2...which again I don't know what these are. I'm assuming these are PCI ports...not sure.
From what I can tell the _ADR represents the device id again on the pci bus.
The ACPI specification doesn't seem to say anything about this...I may have skipped over it though since the paper...is quite large.
Specifically I'm trying to identify what pci bus, device and function is associated with a acpi device under the pci root bridge (PCI0)
For example.
I have
P0P2.BMD0.BPD0
P0P2.BMD0.BPD1
P0P2.BMD0.BPD2
POP2 disassembles as follows on my test box...I understand this is a PCI bridge but what standard tells me that this is in fact a pci bridge other than the name?
I understand that the _ADR tells me that the device is 2.
Code: Select all
Device (P0P2)
{
Name (_ADR, 0x00020000)
OperationRegion (PMER, PCI_Config, 0x00, 0xFF)
Field (PMER, DWordAcc, Lock, Preserve)
{
Offset (0x48),
, 9,
PMGE, 1,
Offset (0x8C),
Offset (0x8E),
PMST, 1
}
Name (_PRW, Package (0x02)
{
0x09,
0x05
})
Method (_PRT, 0, NotSerialized)
.... and so on
Code: Select all
Device (BMD0)
{
Name (_ADR, 0x00)
Method (_PRT, 0, NotSerialized)
{
....
From what I can tell the _ADR represents the device id again on the pci bus.
Code: Select all
Device (BPD1)
{
Name (_ADR, 0x00010000)
Name (_PRW, Package (0x02)
{
0x09,
0x05
})
....