驱动Driver-设备树
1.DTC工具
scripts/dtc/Makefile文件
arch/arm/boot/dts/Makefile
2.DTS语法
2.1dtsi头文件
2.2设备节点
2.3设备树种的数据形式
compatible 属性
model 属性
status 属性
#address-cells 和#size-cells 属性
reg 属性
ranges 属性
name 属性
device_type 属性
根节点 compatible 属性
使用设备树以后的设备匹配方法
向节点追加或修改内容
创建小型模板设备树
添加 cpus 节点
添加 soc 节点
添加 ocram 节点
添加 aips1、aips2 和 aips3 这三个子节点
添加 ecspi1、usbotg1 和 rngb 这三个外设控制器节点
设备树在系统中的体现
根节点“/”各个属性
根节点“/”各子节点
特殊节点
aliases 子节点
chosen 子节点
Linux 内核解析 DTB 文件
绑定信息文档
设备树常用 OF 操作函数
查找节点的 OF 函数
of_find_node_by_name 函数
of_find_node_by_type 函数
of_find_compatible_node 函数
of_find_matching_node_and_match 函数
of_find_node_by_path 函数
查找父/子节点的 OF 函数
of_get_parent 函数
of_get_next_child 函数
提取属性值的 OF 函数
of_find_property 函数
of_property_count_elems_of_size 函数
of_property_read_u32_index 函数
of_property_read_u8_array 函数
of_property_read_u8 函数
of_property_read_string 函数
of_n_addr_cells 函数
of_n_size_cells 函数
of_device_is_compatible 函数
of_get_address 函数
of_translate_address 函数
of_address_to_resource 函数
of_iomap 函数
参考链接
- (Linux驱动入门-设备树DTS)[https://mp.weixin.qq.com/s/uUIOBTbLICk7SCvzFMsj3g]
- (一文搞定 Linux 设备树)[https://cloud.tencent.com/developer/article/1887823]
- (Linux内核设备树篇之初识设备树)[https://mp.weixin.qq.com/s/cZKN7v8NZ_Jweq3rHAp2HQ]
- (Linux设备树详解(一) 基础知识)[https://mp.weixin.qq.com/s/rfZhaJl5YGcMsZh0e9604g]
- (设备树DTS 学习)[https://mp.weixin.qq.com/s/C57ns-2Ihrxv1QIWa8hnIw]