打印

How to flush write buffer when memory attribute is normal_nc

[复制链接]
151|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

粉丝