2016-02-03 80 views
0

我有一個嵌入式系統,並有兩個PCI設備。我想要將這些設備始終映射到同一個地方。我知道Bios可以做到。但是我想要的是從Linux做起。如何解決PCI枚舉?如何修復設備映射的位置?

在BIOS中,步驟是: https://superuser.com/questions/595672/how-is-memory-mapped-to-certain-hardware-how-is-mmio-accomplished-exactly

1º的BIOS發現系統上的所有設備。

2º然後詢問每一個設備來決定BIOS是否將設置該設備了,如果是這樣,確定有多少內存地址空間,如果有的話,該設備的需求。

3ºTheBIOS然後分配空間向每個設備和程序是通過寫入其BAR(基地址寄存器)的地址譯碼器。

我想要的是當linux初始化時做到這一點。我正在使用powerPC和Linux(內核3.XX)

謝謝!

+0

此文檔http://nairobi-embedded.org/linux_pci_device_driver.html似乎應該是有幫助的。 –

+0

您可能必須在體系結構相關代碼(* arch/powerpc *)中編寫一個怪癖。 – 0andriy

回答

0

你可以讓內核重新枚舉總線。檢查Linux中的PCIe hotplug實施。