最近在测试pcie设备中的地址访问时,遇到以下问题:
后来测试人员反馈说加了点延时就好了。。。。
最少需要到90
原因是659模块和pcie的读写速度不匹配,659模块速度太慢。
读写函数不能直接操作地址,在里面加内存屏障DSB,和DMB待测。
#define dmb(option) __asm__ __volatile__ ("dmb " #option : : : "memory")
#define dsb(option) __asm__ __volatile__ ("dsb " #option : : : "memory")
貌似没啥卵用,归根结底是外设反应太慢,单纯优化CACHE也没用。