当前位置: 首页 > news >正文

linux驱动:(16)在设备树添加自定义节点

目录

步骤

编译设备树文件

验证自定义的节点

第一种方法

第二种方法


步骤

  • 找到对应自己板子的设备树文件(手册可以找到)
  • 通过头文件包含找到根节点
  • 在根节点末尾添加我们自定义的节点
  • 给自定义节点起名字 test
  • 添加需要的属性
    /{test1:test{ //别名为test1,节点名称为testcompatible = "test";//匹配的名字#address-cells = <1>;#size-cells = <1>;reg = <0x20ac000 0x0000004>;//寄存器地址};
    };
  • 编译对应自己板子的设备树文件,会连同根节点一起编译
  • 找到编译完的对应自己板子的设备树文件并烧录到开发板中
  • 验证自定义的节点
  • 如果还要再次修改属性或者添加属性,一般做法是在根节点下面通过引用来修改和添加
    &test1{compatible = "test1";//匹配的名字status = "okay";
    };
    • 修改先前的compatible属性
    • 添加status 属性

编译设备树文件

  • 通过dtc工具来讲dts和dtsi文件编译成dtb文件
    • 安装命令,apt-get install device-tree-compiler
  • 修改环境变量为arm和交叉编译器
  • 在内核源码根目录中输入命令(dtbs表示编译所有,不单单一个文件)
    • make dtbs
    • make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- dtbs
  • 如果要单独编译某一个dts设备树文件
    • 找到要编译的设备树文件名字
    • 将上面命令的dtbs改成要编译的设备树文件名字就可以了

验证自定义的节点

第一种方法

  • 进入 源码根目录/proc/device-tree/ 查看到设备树里的属性
  • 通过cat就可以看到属性的值是多少,如果是节点,可以cd进入再通过cat看节点中的属性
  • 我们添加完后,通过cat就可以看到有没有添加成功

第二种方法

  • 进入 源码根目录/sys/firmware/devicetree/base/ 目录中查看,和第一种方法一样,只是路径不一样


http://www.mrgr.cn/news/8762.html

相关文章:

  • 23次8.7(mysql主从脚本与mysql详细语句介绍)
  • Linux 终端显示 Git 当前所在分支
  • RabbitMQ安装 docker
  • 【Redis】Redis 持久化 -- RDB AOF
  • 层次分析法
  • 【设计模式】模板方法模式和迭代器模式
  • 单片机外部中断+定时器实现红外遥控NEC协议解码
  • LEAP模型在能源环境发展、碳排放建模预测及分析中实践应用
  • java操作zookeeper
  • 【话题】关于工厂模式和策略模式
  • 机架式服务器通常适用于哪些场景?
  • 2.redis背景知识
  • 34次8.22(docker基础)
  • 哈希-赎金信字母相关
  • Linux(面试篇)
  • FFmpeg的入门实践系列一
  • 打造高效的编程学习“知识宝库”:从笔记记录到知识管理
  • Object.entries 作用
  • SEO古诗网,可做站群,可二开成泛——码山侠
  • 【网络编程】select实现服务器与客户端进行通信