linux内核中设备树的操作函数
程序员文章站
2022-03-09 21:53:08
...
一、设备树相关函数路径
include/linux/目录下有很多of开头的头文件:
dtb -> device_node -> platform_device
二、处理DTB的相关函数
//a. 处理DTB
of_fdt.h // dtb文件的相关操作函数, 我们一般用不到, 因为dtb文件在内核中已经被转换为device_node树(它更易于使用)
三、处理device_node的相关函数
of.h // 提供设备树的一般处理函数, 比如 of_property_read_u32(读取某个属性的u32值), of_get_child_count(获取某个device_node的子节点数)
of_address.h // 地址相关的函数, 比如 of_get_address(获得reg属性中的addr, size值)
of_match_device(从matches数组中取出与当前设备最匹配的一项)
of_dma.h // 设备树中DMA相关属性的函数
of_gpio.h // GPIO相关的函数
of_graph.h // GPU相关驱动中用到的函数, 从设备树中获得GPU信息
of_iommu.h // 很少用到
of_irq.h // 中断相关的函数
of_mdio.h // MDIO (Ethernet PHY) API
of_net.h // OF helpers for network devices.
of_pci.h // PCI相关函数
of_pdt.h // 很少用到
of_reserved_mem.h // reserved_mem的相关函数
四、处理 platform_device的相关函数
of_platform.h // 把device_node转换为platform_device时用到的函数,
// 比如of_device_alloc(根据device_node分配设置platform_device),
// of_find_device_by_node (根据device_node查找到platform_device),
// of_platform_bus_probe (处理device_node及它的子节点)
of_device.h // 设备相关的函数, 比如 of_match_device
推荐阅读
-
Linux内核设备驱动之内核中链表的使用笔记整理
-
字符设备驱动开发 Linux 设备号 字符设备驱动开发步骤 open 函数调用流程 设备号的组成 设备号的分配 Linux 应用程序对驱动程序的调用 字符设备注册与注销 实现设备的具体操作函数
-
Linux内核中关于字符串的相关操作
-
linux内核里的字符串转换 ,链表操作常用函数(转)
-
解析Linux内核与设备树的编译和烧写
-
设备树中的i2c设备以及内核对i2c节点的处理过程
-
如何使用Linux内核中没有被导出的变量或函数
-
Linux内核设备驱动之内核中链表的使用笔记整理
-
linux内核里的字符串转换 ,链表操作常用函数(转)
-
linux内核中的hook函数详解