遇到的问题
- PCIE link不稳定
- 配置空间读写正常,Memory mapping空间读写异常
缘由
之前对PCIE的认识一直停留在概念的阶段,只知道是一个高速通讯协议,主要用于板内、板间的高速BUS。正好公司最近在调试一个PowerPC平台的PCIE BUS的BSP。需要一些PCIE的硬件、软件知识。下面通过解决实际问题过程的方法来进一步理解PCIE总线协议。但也仅仅限于工程应用(实际产品中调试、应用)层面。
具体解决过程
PCIE 物理层link 不稳定
启动u-boot后,可以看到PCIE link status信息log
从log上分析:系统启动了3个PCIE controller,PCIE 号为:0.0.0 2.0.0 4.0.0。
三个数字的具体含义为:0.0.0 :Bus Number Device Number Function Number。
这三个Host Bridge 下面分别挂了一个EP设备,PCIE 号为:1.0.0 、3.0.0 、5.0.0。
正常看到这些PCIE bridge 和EP说明PCIE 读PCIE的配置空间是正