1 / 27
文档名称:

设备树使用手册.doc

格式:doc   大小:124KB   页数:27页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

设备树使用手册.doc

上传人:cby201601 2020/8/20 文件大小:124 KB

下载得到文件列表

设备树使用手册.doc

相关文档

文档介绍

文档介绍:设备树使用手册本文将介绍如何为一个新机器编写设备树。我们准备提供一个有关设备树概念的概述和如何使用这些设备树来描述一个机器。完整的设备树数据格式的技术说明书请参考ePAPR规范。ePAPR规范涵盖了比本文基本主题更丰富的细节,要查阅本文没有涉及到的高级用法请参考该规范。        CPU  范围(地址转换) chosen  PCI  PCI  PCI  。属性就是键-值对,而节点可以同时包含属性和子节点。例如,:/{node1{      a-string-property="Astring";      a-string-list-property="firststring","secondstring";      a-byte-data-property=[0x010x230x340x56];       child-node1{          first-child-property;          second-child-property=<1>;          a-string-property="Hello,world";       };       child-node2{       };   };   node2{       an-empty-property;       a-cell-property=<1234>;/*eachnumber(cell)isauint32*/       child-node1{       };   };};这棵树显然是没什么用的,因为它并没有描述任何东西,但它确实体现了节点的一些属性:■一个单独的根节点:“/”■两个子节点:“node1”和“node2”■两个node1的子节点:“child-node1”和“child-node2”■一堆分散在树里的属性。属性是简单的键-值对,它的值可以为空或者包含一个任意字节流。虽然数据类型并没有编码进数据结构,但在设备树源文件中任有几个基本的数据表示形式。■文本字符串(无结束符)可以用双引号表示:string-property="astring"■‘Cells’是32位无符号整数,用尖括号限定:cell-property=<0xbeef1230xabcd1234>■二进制数据用方括号限定:binary-property=[0x010x230x450x67];■不同表示形式的数据可以使用逗号连在一起:mixed-property="astring",[0x010x230x450x67],<0x12345678>;■逗号也可用于创建字符串列表:string-list="redfish","bluefish";基本概念我们将以一个简单机开始,然后通过一步步的建立一个描述这个简单机的设备树,来了解如何使用设备树。(大致基于ARMVersatile),制造商为“Acme”,并命名为“Coyote'sRevenge”: ■ 一个32位ARMCPU    ■ 处理器本地总线连接到内存映射的串行口、spi总线控制器、i2c控制器、中断控制器和外部总线桥 ■  256MBSDRAM起始地址为0 ■两个串口起始地址:0x101F1000和0x101F2000 ■ GPIO控制器起始地址:0x101F3000 ■ 带有以下设备的SPI控制器起始地址:0x10170000   ■ MMC插槽的SS管脚连接至GPIO#1 ■ 外部总线桥挂载以下设备   ■ SMCSMC91111以太网设备连接到外部总线,起始地址:0x10100000   ■ i2c控制器起始地址:0x10160000,并挂载以下设备     ■ MaximDS1338实时时钟。响应至从地址1101000(0x58)   ■  ,这是一个有效的设备树最基本的结构。在这个阶段你需要唯一的标识该机器。/{   compatible="acme,coyotes-revenge";};compatible指定了系统的名称。它包含了一个“<制造商>,<型号>”形式的字符串。重要的是