首页 > 技术知识 > 正文

PCIe设备BAR地址在系统启动时分配,其信息存放在PCIe 配置空间中。以Hi3531为例,配置空间中偏移地址 0x10、0x14、0x18中分别存放了BAR0、BAR1、BAR2的地址信息。其中BAR0大小8M,为可预取。BAR1大小64K,BAR2大小1M,都是不可以预取的。

对PCIe控制器0下面接的第一个设备:

himd.l 0x40100000

0000: 353219e5 00100140 04800001 00000008

0010: 30800008 31500000 31400000 37800001

0020: 00000000 00000000 00000000 00000000

0030: 00000000 00000040 00000000 00000149

0040: 5bc35001 00000008 00000000 00000000

0050: 00807005 00000000 00000000 00000000

0060: 00000000 00000000 00000000 00000000

0070: 00020010 00008702 00002010 00423c11

上面蓝色字体就是从设备的BAR地址信息。

对PCIe控制器1下面的第一个设备而言,配置空间基址为:0x70300000。

猜你喜欢