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

Linux kernel中的dts dtsi dtb dtc dtb.img dtbo.img

1、问题

kernel与hsm会设置一些gpio,但是某些gpio会在kernel与hsm侧共同设置,导致最终的设置结果失败,将kernel侧在dts文件中设置的gpio注释掉之后,发现hsm设置gpio时还是失败

2、问题原因

因为dts文件不仅仅会影响kernel镜像,还会影响dtb.img与dtbo.image,因为只烧写了hsm与kernel的镜像,没有重新烧写dtb.img与dtbo.image,导致之前在dts中配置的gpio依然生效,最终导致gpio的设置出错。

3、解决办法

整体编译一下Android代码,重新烧录dtb.img与dtbo.image。

4、相关概念

DTS (Device Tree Source):设备树源文件,是用人类可读的文本格式编写的文件,描述硬件设备的层次结构和属性。DTS文件通常包含设备树的完整或部分定义。


DTSI (Device Tree Source Include):设备树源包含文件,类似于C语言中的头文件(.h)。DTSI文件包含可以在多个DTS文件中共享的通用定义和配置。通过使用#include指令,DTS文件可以包含DTSI文件,从而避免重复代码。


DTB (Device Tree Blob):设备树Blob,是一个二进制格式的设备树文件。DTB文件是由DTS文件通过设备树编译器(DTC)编译生成的,用于在系统启动时传递给内核。


DTC (Device Tree Compiler):设备树编译器,是一个工具,用于将DTS文件编译成DTB文件。DTC可以将人类可读的设备树源文件转换为内核可以理解的二进制格式。

dtb.img:包含DTB文件的镜像文件。在某些系统中,DTB文件会被打包成特定的镜像文件,如dtb.img,以便在系统启动时由引导加载程序加载到内存中。


dtbo.img:一个包含设备树Blob Overlay(DTBO)文件的镜像文件。DTBO文件用于设备树叠加,允许在不修改主设备树的情况下,通过叠加额外的设备树片段来添加、修改或删除设备树中的节点和属性。dtbo.img 文件通常包含可以在运行时根据需要加载到主设备树中的DTBO文件。

通过这些,可以避免对内核代码的大量修改,并且更容易的配置设备

http://www.lryc.cn/news/433427.html

相关文章:

  • 微信小程序页面制作——个人信息
  • 使用C++11的`std::async`执行异步任务:实战指南
  • 【高阶数据结构】B树、B+树、B*树
  • HBuilderx中vue页面引用scss样式
  • 粒子群算法原理的示例介绍
  • GNU/Linux - Open函数使用的O_CLOEXEC flag
  • AWQ量化(Activation-aware Weight Quantization)
  • SprinBoot+Vue体育商品推荐的设计与实现
  • 【Python基础】Python函数
  • 【超简单】1分钟解决ppt全文字体一键设置
  • 数组与贪心算法——179、56、57、228(2简2中)
  • WireShark过滤器
  • 2024年全新deepfacelive如何对应使用直播伴侣-腾讯会议等第三方软件
  • 告别懵逼——前端项目调试与问题排查方法小结
  • [数据集][目标检测]肺炎检测数据集VOC+YOLO格式4983张2类别
  • 顶层const和底层const
  • 嵌入式Openharmony系统构建与启动详解
  • 锡林郭勒奶酪品牌呼和浩特市大召店盛大开业
  • 【Java算法】模拟
  • 标准库标头 <filesystem> (C++17)学习之文件类型
  • 基于51单片机的自动转向修复系统的设计与实现
  • mysql笔记4(数据类型)
  • 电脑开机出现no operation system found错误原因分析及解决方法
  • 数学建模笔记—— 主成分分析(PCA)
  • @vueup/vue-quill使用quill-better-table报moduleClass is not a constructor
  • gpp.bat,g++编译C++源文件的批处理
  • JDBC:连接数据库
  • 【赵渝强老师】大数据主从架构的单点故障
  • 【AutoX.js】选择器 UiSelector
  • Elasticsearch数据写入过程