omapl138 arm开启cache导致spi flash读写错误

2019-07-30 15:45发布

如果不开cache,spi flash没有问题;开cache后,发现写进进flash的数据和回读数据不一致。

cache开启流程如下:

    MMUTtbInit();

    // Configures translation table base register
    // with pagetable base address.
    CP15TtbSet((UINT)m_auiPageTable);

    // Enables MMU
    CP15MMUEnable();

    // Enable Instruction Cache
    CP15ICacheEnable();

    // Enable Data Cache
    CP15DCacheEnable();

是否是cache使用有误?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答
zhangmangui
1楼-- · 2019-07-30 21:19
comeon201208
2楼-- · 2019-07-31 00:12
楼上的分享我也参考下的吧。
arcking
3楼-- · 2019-07-31 05:35
zhangmangui 发表于 2015-3-18 23:27
参考一下
http://www.deyisupport.com/question_answer/dsp_arm/omap_l1x/f/54/t/77785.aspx

DMA搬移前确实需要clean cache,因为DMA只认物理地址;但我的spi没有用DMA,照道理cache不会影响spi读写啊。
angerbird
4楼-- · 2019-07-31 09:46
 精彩回答 2  元偷偷看……

一周热门 更多>