• 常用Linux内核调试手段介绍 03——— 内核笔记



    活动地址:CSDN21天学习挑战赛

    三、devmem直接读写寄存器进行调试

    调试

    1、printk 调试

    2、动态打印

    3、devmem 调试

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

    3.1 配置devmem

    make ARCH = arm menuconfig
    在这里插入图片描述

    ​3.2 devmem 的使用

    devmem的使用方式语法:
    devmem ADDRESS [WIDTH [VALUE]]

    • ADDRESS:要直接读写的地址
    • WIDTH :指定读写资料的位数(8/16/32…)
    • VALUE :要写入的资料

    • 读32位: devmem 0x6900000
    • 读16位: devmem 0x6900000 16
    • 读8位: devmem 0x6900000 8

    • 写32位: devmem 0x34000000 32 0x12345678
    • 写16位: devmem 0x34000000 16 0x1234.
    • 写8位: devmem 0x34000000 8 0x12

    示例:使用的是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:/]# 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23

    扩展:devkmem 虚拟地址

    [root@RV1126_RV1109:/]# devkmem
    -/bin/sh: devkmem: not found
    [root@RV1126_RV1109:/]#

    没有找到是上面在配置的时候没有配置上
    功能用法跟 devmem 一样

    devmem和devkmem 深入可以参考此文章:
    可以一眼卡卡

  • 相关阅读:
    360杀毒卸载办法
    JavaWeb项目的热部署配置
    HCIP综合实验
    Selenium 自动化遇见 shadow-root 元素怎么处理?
    制糖行业脱色技术A30MP树脂材料
    常用的神经网络控制结构,神经网络控制应用实例
    如何让文字变成语音?推荐三个免费把文字变成音频软件
    【计算机网络Part 2】数据链路层
    滑动窗口的理念
    删除有序数组的重复项-------题解报告
  • 原文地址:https://blog.csdn.net/weixin_52011465/article/details/126273446