在好幾個論壇發了帖子都沒人回 希望這有人幫忙 多謝了
pci@0x10180000 {
compatible = "arm,versatile-pci-hostbridge", "pci";
reg = <0x10180000 0x1000>;
interrupts = <8 0>;
bus-ranges = <0 0>;
#address-cells = <3>
#size-cells = <2>;
ranges = <0x42000000 0 0x80000000 0x80000000 0 0x20000000
0x02000000 0 0xa0000000 0xa0000000 0 0x10000000
0x01000000 0 0x00000000 0xb0000000 0 0x01000000>;
};
我想問的就是關于pcie總線地址和cpu地址之間的映射關系 最近剛開始學習pcie 概念比較模糊 據我查資料了解到 reg = <0x10180000 0x1000>;這個0x10180000 應該是pcie總線自己的地址 跟設備樹上別的設備不同 別的設備reg里的地址好像cpu直接可以訪問的到 pcie貌似需要地址轉換 ranges = <0x02000000 0 0xa0000000 0xa0000000 0 0x10000000是這樣 從總線的a0000000映射到cpu地址的a0000000嗎?那我想訪問reg里的資源 應該是a0000000+10180000?可是規定的映射長度只有10000000啊?網上講這塊的比較少 有沒有人幫幫我
另外 對于非x86的處理器來說 pcie映射到cpu的io空間和記憶體空間這兩個的功能是不是一樣的?
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/112894.html
標籤:驅動開發/核心開發
