devmem工具在应用层能够侦测内存地址中的数据变化,以此来检测驱动中对内存或者相关配置的正确性验证。这个工具的原理比较简单,就是应用程序通过 mmap 函数实现对 /dev/mem 驱动中 .mmap 方法的使用,映射设备的内存到用户空间,实现对这些物理地址的读写操作。通过使用,发现IO内存和物理内核都可以使用 devmem2 工具读写。
devmem2安装
将devmem2_0.0-0ubuntu2_arm64.deb安装包拷贝到设备执行:
#dpkg -i devmem2_0.0-0ubuntu2_arm64.deb
devmem2使用
devmem2 { address } [ type [ data ] ] address : 物理地址 type :要访问的数据类型 : [byte], [halfword], [word] data :想要写入的数据,若为读取操作则省略此参数,若为写入,则必须含有此参数
查看某个寄存器的值:
#devmem2 0xb0400000
改写某个寄存器的值:
#devmem2 0xb0400000 w 0x12345678
选项w表示写入int数据,同理h表示short,b表示char