1、背景介绍
最近调试的模块中使用PS GPIO模拟I2C进行I2C数据接收,在把standalone程序移植到应用程序下后,发现在mmap映射后读取PS GPIO物理地址寄存器空间(0xE000A000-0Xe000b000)返回值均为0,用devmem应用程序跑了一下,发现无法写入。

2、解决方法
在xilinx论坛上查到了解决办法,如下:

上面提到由于新内核中启用了电源管理机制,内核默认将设备处于暂停状态,从而使用devmem读写寄存器失败,关闭电源管理机制后能解决该问题。
于是修改了内核配置,如下。



使用devmem能对PS GPIO进行正常读写。

解决PSGPIO I2C数据接收问题
在调试使用PSGPIO模拟I2C的模块时,遇到读取寄存器空间返回值为0的问题。文章详细介绍了如何通过修改内核配置,关闭电源管理机制来解决该问题。
1600

被折叠的 条评论
为什么被折叠?



