How to flush write buffer when memory attribute is normal_nc

[复制链接]
265|0
 楼主| 小小的人呀 发表于 2018-9-9 10:22 | 显示全部楼层 |阅读模式
Hi,
I am working on access pcie bar in armv8-a cpu(cortex-A5x) powered soc. Right now, I encounter an issue about (maybe) coherent issue.
When I write data(4 bytes aligned) to pcie bar with ioremap_wc, there is some incorrect data. And it is correct if write data twice. Or I make use of the ioremap which means device_nGnRE attribute.
When I read the armv8 arm, it say that the write of normal_nc is visible for all the observers. I am not sure if the cache maintenance should work. I want to know what is the best practice in these senario. Is there something like flush write buffer helping me flushing data to pcie bar?
There is no coherent between arm cpu and pcie.
Thanks.
您需要登录后才可以回帖 登录 | 注册

本版积分规则

399

主题

399

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部