活动地址:CSDN21天学习挑战赛
devmem直接读写寄存器进行调试,硬件工程师将硬件设计好时需要简单的测试程序来看看CPU是否可以正确地读取新硬件系统,在正规的linux操作方式下,必须要有硬件的驱动程序才能完成这个需求。然而有时只是为了做简单的硬件寄存器读写动作,就开发驱动程序实在是不划算,为了克服这尴尬的情况, Linux的devmem命令油然而生。
make ARCH = arm menuconfig

devmem的使用方式语法:
devmem ADDRESS [WIDTH [VALUE]]
读
写
示例:使用的是rv1126 核心板
[root@RV1126_RV1109:/]# devmem 0x6900000 8
0xFF
[root@RV1126_RV1109:/]# devmem 0x6900000 16
0xFFFF
[root@RV1126_RV1109:/]# devmem 0x6900000
0xFFFFFFFF
[root@RV1126_RV1109:/]#
[root@RV1126_RV1109:/]#
[root@RV1126_RV1109:/]# devmem 0x6900000 32 0x12345678
[root@RV1126_RV1109:/]#
[root@RV1126_RV1109:/]# devmem 0x3400000 16 0x1234
[root@RV1126_RV1109:/]#
[root@RV1126_RV1109:/]# devmem 0x1800000 8 0x69
[root@RV1126_RV1109:/]#
[root@RV1126_RV1109:/]#
[root@RV1126_RV1109:/]# devmem 0x6900000
0x12345678
[root@RV1126_RV1109:/]# devmem 0x1800000
0xFFFFFF69
[root@RV1126_RV1109:/]# devmem 0x3400000
0xFFFF1234
[root@RV1126_RV1109:/]#
[root@RV1126_RV1109:/]#
扩展:devkmem 虚拟地址
[root@RV1126_RV1109:/]# devkmem
-/bin/sh: devkmem: not found
[root@RV1126_RV1109:/]#
没有找到是上面在配置的时候没有配置上
功能用法跟 devmem 一样
devmem和devkmem 深入可以参考此文章:
可以一眼卡卡