目录
Linux设备树
啥是设备树???一个大树有树干,枝杈,叶子。
在LInux设备树模型中:树干指Linux系统总线,枝杈指Linux系统支线(“支线”简单来说指:IIC总线、SPI总线等),叶子指设备(各种IIC总线、SPI总线设备,IO设备(常见的按键和灯等))。
以“树”为模型描述 形象。
与“树”相关的DTB、DTS、DTC
DTS 是设备树源码文件。
DTB 是将DTS 编译以后得到的二进制文件。(不用管)
DTC是将DTS编译成DTB的工具。(不用管)
设备树编译命令
make dtbs
xxx.dtsi文件,描述节点的信息
节点名字格式
name@address或label:name@address
name:节点名字
label:节点标号
address:地址(一般设备地址或者寄存器首地址)或者为0,表示没有地址。
标号是为了方便访问节点,访问节点格式 &label
关于设备树中reg
reg = <address1 length1 address2 length2 address3 length3……>
reg<起始地址 地址映射大小>
地址映射大小=结束地址-起始地址+1
reg = <0x02020000 0x4000>;
关于设备树中ranges
rangs<child-bus-address,parent-bus-address,length>
ranges 是一个地址映射/转换表, ranges 属性每个项目由子地址、父地址和地址空间长度3部分组成。