introduction-to-the-beaglebone-black-device-tree.pdf
The Device Tree (DT), and Device Tree Overlay are a way to describe hardware in a system. An example of this would be to describe how the UART interfaces with the system, which pins, how they should be muxed, the device to enable, and which driver to use. The original BeagleBone didn't use the DT, but the recently released BeagleBone Black was released with the DT and is now using the 3.8 Linux Kernel. 【概述】 设备树(Device Tree)和设备树叠加层(Device Tree Overlay)是描述系统硬件的一种方式。例如,它们用于说明UART如何与系统交互,哪些引脚被使用,如何复用这些引脚,应启用哪个设备以及使用哪个驱动程序。最初的BeagleBone并未使用设备树,但最新发布的BeagleBone Black引入了设备树,并采用了3.8版Linux内核。 【设备树背景】 设备树的出现是由于ARM系统在过去几年中的大量涌入导致的。在Linux内核中,关于ARM组件存在很多混乱和冲突,这促使Linus Torvalds提出了反对意见。这一反对最终导致新的ARM板需要使用扁平化设备树,而不是ARM板文件。BeagleBone Black开发者因此不得不在新的Linux内核版本中实现设备树,即目前使用的3.8版本。他们这样做的原因是无法将新的ARM板文件纳入Linux内核主线。 【设备树叠加层】 随着设备树的使用,发现了一个问题,即它不适合需要在运行时修改系统(如复用引脚、启用设备等)的开放嵌入式系统。为解决这个问题,Pantelis Antoniou提出了设备树叠加层的概念。设备树叠加层允许在运行时动态地添加或修改设备树信息,以适应不同的硬件配置或应用场景。 【导出和取消导出叠加层】 导出和取消导出叠加层是管理这些设备配置变化的过程。通过这个功能,开发者可以在不重新编译整个内核的情况下,根据需要加载或卸载特定的硬件功能。这对于BeagleBone Black这样的开发平台尤其有用,因为它允许用户灵活地调整硬件设置以适应各种项目需求。 【编译叠加层】 编译设备树叠加层涉及到将设备树源代码转换为可由内核识别和加载的二进制格式。这通常包括修改设备树源文件(.dts)来定义新的或修改过的硬件配置,然后使用dtc(设备树编译器)将源文件转换为设备树blob(.dtbo)文件。这个二进制文件随后可以被内核加载,从而改变系统的硬件配置。 总结来说,BeagleBone Black中的设备树和设备树叠加层是硬件描述的关键工具,它们使得在运行时灵活配置系统成为可能。通过理解和使用这些机制,开发者可以更好地控制和优化BeagleBone Black的硬件资源,以适应各种复杂的项目需求。
剩余11页未读,继续阅读
- 粉丝: 35
- 资源: 48
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 1732537263117202.000000.jpg
- vb.net开发安卓软件的方法
- 江苏省普通高校“专转本”选拔考试专业综合科目考试大纲(试行)
- C语言实现基于华为LiteOS的智慧楼宇消防系统源码+电路图+全部资料
- 基于CMLM的语义一致性数据增强方法python实现源码(提高神经机器翻译的性能、IWSLT14 DE-EN数据集验证).zip
- 静态网站首页制作,纯手工,没有使用框架
- 机器学习大作业-Python实现基于线性回归的PM2.5预测项目源码(高分期末大作业)
- 基于java开发的绿色出行的个人碳排放积分系统+源码(毕业设计&课程设计&项目开发)
- 数据结构--实验报告2.docx
- 基于python的开源文本到语音转换项目+小白使用教程(支持批量英语、中文、多情感语音合成,web界面).zip
评论0