就是塔塔的个人空间 https://www.eechina.com/space-uid-136863.html [收藏] [复制] [RSS]

博客

迅为IMX6ULL开发板Linux设备树实验

已有 403 次阅读2020-8-3 10:40

在上一节迅为IMX6ULL开发板已经对DTS的语法做了比较详细的介绍,在本节中根据前面讲解的语法,从头到尾编写一个小型的设备树文件。我们会以一个虚拟的设备作为参考,提前假设一些外部设备和功能。当然这个虚拟的设备没有任何的意思,只是为了复习掌握前面学习的设备树语法。在实际产品的开发过程中,我们不需要从头编写一个dts设备树文件,一般都是使用soc厂商提供的dts文件,我们只需要根据自己的实际情况修改添加自己的内容即可。

下面这个假设的设备,制造商为Acme”,并命名为“Coyote's Revenge”,具体功能如下:

一个32ARM CPU

处理器本地总线连接到内存映射的串行口、spi 总线控制器、i2c 控制器、中断控制器和外部总线桥

256MB SDRAM起始地址为0

两个串口起始地址:0x101F10000x101F2000

GPIO控制器起始地址:0x101F3000

带有一下设备的SPI控制器起始地址:0x10170000

MMC插槽的SS管脚连接至GPIO #1

外部总线桥挂载一下设备

SMC SMC91111 以太网,起始地址:0x10100000

i2c控制器起始地址:0x10160000,并挂载一下设备

Maxim DS1338实时时钟,响应至从地址110100000x58

64MB NOR闪存起始地址:0x30000000

1、初始结构

第一步就是要给这个虚拟的设备构建一个基本结构,这是一个有效的设备树的最基本的结构,在这个阶段需要唯一的标识该设备:

/ {

compatible = "acme,coyotes-revenge";

};

2、添加CPU处理器

接着就是描述每个CPU了,先添加一个名为“cpus”的容器节点,然后为每个CPU分别添加子节点,具体到我们的情况就是一个ARM的双核Cortex A9系统。

/ {

compatible = "acme,coyotes-revenge";


路过

鸡蛋

鲜花

握手

雷人

评论 (0 个评论)

facelist

您需要登录后才可以评论 登录 | 立即注册

关于我们  -  服务条款  -  使用指南  -  站点地图  -  友情链接  -  联系我们
电子工程网 © 版权所有   京ICP备16069177号 | 京公网安备11010502021702
返回顶部