设备树基本原理与操作方法

简介: 设备树基本原理与操作方法

学习计划

1,学习目标


一周掌握设备树


2,学习内容


例如:

Linux设备树控制方法

掌握循环语句


3,学习时间


提示:可以添加计划学习的时间

例如: 周一至周五晚上 7 点—晚上9点

周六上午 9 点-上午 11 点

周日下午 3 点-下午 6 点


4,学习产出


提示:统计学习计划的总量

例如:

技术笔记 2 遍

CSDN技术博客 3 篇

学习的vlog 视频 1 个

学习日记

第一:为什么要使用设备树

在老的Linux内核的arch/arm/plat-xxx和arch/arm/mach-xxx中充斥着大量的描述不同板级硬件信息的代码,而这些板级信息对于内核来说不过是一些垃圾代码,因为不同的板级他们的硬件信息都不相同,这些都是硬件特有的信息,对内核而言没有任何的意义,但是往往这部分代码特别的多,造成内核的冗余。设备树的引入就是为了解决这个问题。


设备树是一种描述硬件的数据结构,在linux2.6版本上才开始使引入,采用了设备树之后,许多硬件的细节可以直接通过它传递给Linux,而不再需要在内核中进行大量的冗余编码,它通过bootloader将硬件资源传给内核,使得内核和硬件资源描述相对独立。


设备树可以描述的信息包括CPU的数量和类别、内存基地址和大小、总线和桥、外设连接、中断控制器和中断使用情况、GPIO控制器和GPIO使用情况、Clock控制器和Clock使用情况。


另外,设备树对于可热插拔的热备不进行具体描述,它只描述用于控制该热插拔设备的控制器。

第二:Linux设备树目标

https://www.kernel.org/doc/Documentation/devicetree/usage-model.txt


The “Open Firmware Device Tree”, or simply Device Tree (DT), is a data


structure and language for describing hardware. More specifically, it is a


description of hardware that is readable by an operating system


so that the operating system doesn’t need to hard code details of the


machine


提供一种语言来解耦硬件配置信息

第三:Linux设备树概述:dtsdtsi

DTS(device tree source)


DTS: .dts文件是设备树的源文件。


文件.dts是一种ASCII文本格式的设备树描述 ,一个.dts文件对应一个ARM的设备, 一般放置在内核的arch/arm/boot/dts/目录中 。


由于一个SoC可能对应多个设备(一个SoC可以对应多个产品和电路板),这些.dts文件势必须包含许多共同的部分,Linux内核为了简化,把SoC公用的部分或者多个设备共同的部分一般提炼为.dtsi,类似于C语言的头文件。其他的设备对应的.dts就包括这个.dtsi 。


目录:arch/arm64/boot/dts/mediatek/auto2735evb.dts

5514dd339b0243e9bac7a905ebddbb7e (1).png

第四:Linux设备树语法

设备树用树状结构描述设备信息,它有以下几种特性:

每个设备树文件都有一个根节点,每个设备都是一个节点。

节点间可以嵌套,形成父子关系,这样就可以方便的描述设备间的关系。

每个设备的属性都用一组key-value(键值对)来描述。

每个属性的描述用;结束


DeviceTree的结构非常简单,由两种元素组成:

Node(节点)

Property(属性)

[label:] node-name[@unit-address] {
    [properties definitions]
    [child nodes]
}

760a58f50b6b477cbf3d7b96dcc8fb37.png

目录
相关文章
|
人工智能 程序员 测试技术
AI与Prompt:解锁软件开发团队的魔法咒语,在复杂任务上生成正确率更高的代码
AI与Prompt:解锁软件开发团队的魔法咒语,在复杂任务上生成正确率更高的代码
313 0
|
JavaScript
JS 上传文件--获取视频文件宽高
JS 上传文件--获取视频文件宽高
525 0
|
机器学习/深度学习 数据采集 编解码
深度学习原理篇 第八章:CLIP
简要介绍clip的原理和代码实现。
3280 0
|
算法 大数据
【科研入门】评价指标AUC原理及实践
该文介绍了二分类问题的评估指标,特别是AUC的概念和重要性。文章首先讲解了混淆矩阵,包括TP、FP、FN和TN的含义,然后讨论了准确率、精确率和召回率,并指出它们在处理不平衡数据集时的局限性。接着,作者解释了阈值对分类结果的影响以及如何通过调整阈值平衡精确率和召回率。最后,文章重点介绍了ROC曲线和AUC,说明AUC作为衡量模型性能的无参数指标,其值越接近1表示模型性能越好。AUC可以通过计算ROC曲线下的面积或比较样本对的预测得分来求得。
826 1
【科研入门】评价指标AUC原理及实践
|
11月前
|
存储 编解码 前端开发
惊!前端新手也能秒懂的高级技巧,轻松提升网页颜值与性能!
本文针对前端新手,介绍了三个简单易学的高级技巧,帮助提升网页的颜值和性能。包括使用CSS框架快速美化网页、优化图片资源加快加载速度,以及利用ARIA属性和媒体查询提高网页的可访问性和响应性。示例代码清晰,适合初学者上手实践。
181 3
|
并行计算 安全 Java
Python 多线程并行执行详解
Python 多线程并行执行详解
387 3
|
Linux
68Linux - 解决CentOS启动卡住了,提示starting auditd: [failed]
68Linux - 解决CentOS启动卡住了,提示starting auditd: [failed]
374 0
|
前端开发 UED 开发者
【专栏:HTML与CSS实战项目篇】制作一个响应式图片画廊
【4月更文挑战第30天】本文介绍了如何使用HTML和CSS创建响应式图片画廊。响应式画廊能根据用户设备屏幕大小自动调整布局。首先规划结构,包含一个图片容器和每张图片元素,并为图片提供替代文本。接着设计样式,设置图片大小、间距和视觉效果。然后通过媒体查询实现响应式设计,根据不同屏幕尺寸调整图片排列。同时考虑性能优化,如压缩图片和使用懒加载技术。最后,测试和调试确保画廊在各种设备上正常工作。这个过程强调了响应式设计和用户体验的重要性。
389 4
智能卡系统工程是一个涉及多个方面的复杂系统,包括硬件(如读卡器、智能卡)、软件(如读卡器驱动程序、智能卡操作系统和应用软件)以及网络通信等。
智能卡系统工程是一个涉及多个方面的复杂系统,包括硬件(如读卡器、智能卡)、软件(如读卡器驱动程序、智能卡操作系统和应用软件)以及网络通信等。
R语言多元时间序列滚动预测:ARIMA、回归、ARIMAX模型分析
R语言多元时间序列滚动预测:ARIMA、回归、ARIMAX模型分析