大家好!
背景是:
两块6678处理器通过PCIe交换芯片PEX8648相连,一片做RC,一片做EP,修改RC端相应寄存器,可以访问到PEX8648的port0、port1、及EP端的6678的配置空间。
问题:
现在在对RC、EP的outbound、inbound寄存器完成配置后,对RC端配置空间1里、PEX8648的port0、port1的预取memory和非预取memory空间都进行了设置,对PEX8648 port0的bar0,EP的bar0、bar1进行了设置,进行memory-map 映射。但是仍不能访问EP与PEX8648 的映射空间,访问读到的全是0。
请问是否哪里还需配置?配置空间访问成功是否证明硬件上已无问题?
Thomas Yang1:
你好,
6678 的PCIE配置空间作为EP侧被RC访问时,BAR的映射关系是固定的,而其他数据空间访问,BAR的映射关系是需要配置的。从现象来看,应该你的PCIE MAP映射关系没有配置好,建议重点检查下OB,IB,和BAR寄存器的配置
guohai bai:
您好,我现在遇到了类似您这样的问题,我的是4dsp通过pex8624 switch连接,也是配置了8624的BAR0寄存器后,发现在配置的地址映射的位置看不到port口的配置寄存器,请问您当时是怎么解决这个问题的?
Thomas Yang1:
回复 guohai bai:
RC通过SWITCH端口访问EP的CFG空间,在type类型的配置时需要定义为1