acpi dsdt

Question about which tools to use, bugs, the best way to implement a function, etc should go here. Don't forget to see if your question is answered in the wiki first! When in doubt post here.
Post Reply
mistergabe
Posts: 5
Joined: Sun Sep 08, 2013 8:10 am

acpi dsdt

Post by mistergabe »

So I'm at the point where I properly parse the acpi irq routing table but I'm still having trouble grasping the concept of pci irq "swizzling" as they call it. So anything that is under a pci bridge isn't working for me right now

Looking at the ACPI DSDT on any PC. What really puzzles me is that you can only see (AFAIK) the main PCI root bridge (bus 0) there is no other buses. I can definitely see the bridges themselves though.

I guess my question is, how can you extract the bus number of a pci express bridge through acpi?

Or am i getting this completely wrong?
u9012063
Member
Member
Posts: 26
Joined: Mon Jan 23, 2012 5:00 am
Location: Stony Brook University | ITRI

Re: acpi dsdt

Post by u9012063 »

Hi,

I think you can parse the ACPI MCFG table, (PCI Express memory mapped configuration space base address Description Table) and you will get the MMCONFIG address, such as :
PCI: MMCONFIG for domain 0000 [bus 00-ff] at [mem 0xe0000000-0xefffffff] (base 0xe0000000)
PCI: MMCONFIG at [mem 0xe0000000-0xefffffff] reserved in E820

Then from the 0xe0000000, you can scan all deivces' PCI configuration spaces.

Regards,
William
Post Reply