冉冉云
嵌入式软件开发、linux爱好者
展开
-
基于设备树的中断控制器的初始化
在中断控制器驱动中,通常会使用宏来注册中断控制器的初始化函数,以ARM的GICcompatiblecompatible。原创 2024-04-14 13:16:58 · 166 阅读 · 0 评论 -
[linux api] of_irq_init
这是典型的基于队列实现层序遍历的做法,不再赘述。中找出以其为父控制器的中断控制器,对其进行初始化后,从。会确保先初始化父控制器再初始化子控制器,也即整体按照。进行匹配,找出所有的中断控制器节点,串到一条名为。字段,用来匹配中断控制器设备节点的。遍历所有设备节点,并与参数。)作为当前的父控制器,从。取出,并添加到另一条链表。的首元素,作为新一轮的。原创 2024-04-14 10:32:52 · 113 阅读 · 0 评论 -
认识设备树(四)——内核对DTB文件的解析
目录1 从u-boot传参到__atags_pointer2 内核对设备树中平台信息的处理2.1 machine_desc2.2 源码分析2.2.1 setup_arch2.2.2 setup_machine_fdt2.2.3 of_flat_dt_match_machine3 内核对设备树中运行时配置信息的处理3.1 of_scan_flat_dt3.2 解析/chosen节点3.3 解析根节点的{size,address}-cells属性3.4 解析/memory节点3.5 小结4 内核对设备树中设备信原创 2020-09-27 15:28:34 · 5108 阅读 · 3 评论 -
认识设备树(三)——u-boot对设备树的支持
目录前言1 xxx前言1 xxx原创 2020-09-27 15:25:42 · 5071 阅读 · 1 评论 -
认识设备树(二)——设备树文件的格式
目录1 DTS文件的格式1.1 DTS文件的总体布局1.2 memory reservations的格式1.3 属性的格式1.3.1 有关属性名1.3.2 有关属性值1.4 节点的格式1.4.1 推荐的节点名1.4.2 节点的路径名1.5 一些特定的属性1.5.1 #address-cells1.5.2 #size-cells1.5.3 compatible1.5.4 model1.5.5 phandle1.5.6 interrupt-controller1.5.7 interrupt-parent1.5.原创 2020-09-24 11:51:03 · 3996 阅读 · 0 评论 -
认识设备树(一)——概述
目录1 前言2 为什么需要设备树2.1 单片机中的设备驱动2.2 linux的总线-设备-驱动模型2.3 不使用源文件描述设备3 认识设备树1 前言如何去描述设备这一定是设备驱动需要考虑的重要问题。早先,linux中ARM架构使用源文件中的宏、结构等去描述设备,不过现在已全面转向设备树。使用文本来描述设备,肉眼可见的方便。本文就是本人学习设备树的笔记,即是对自己学习的知识做个总结和整理,也为方便后来人。2 为什么需要设备树2.1 单片机中的设备驱动在单片机编程中,通常不存在复杂的驱动框架,所有关于原创 2020-09-24 11:47:17 · 1006 阅读 · 0 评论