从设备树到系统启动日志 · 逐行分析实战

📚 共计 30 章节
01
设备树基础
什么是设备树?为什么需要设备树?dts、dtsi、dtb 文件结构
概念入门
02
设备树语法
节点、属性、标签、引用、包含文件、宏定义
语法dts
03
设备树规范
标准属性:compatible、reg、interrupts、status 等
规范属性
04
设备树绑定
如何为特定外设编写设备树节点
绑定外设
05
设备树编译
dtc 工具使用、编译过程、反编译技巧
dtc编译
06
设备树覆盖
DT Overlay 原理与应用
overlay动态
07
Bootloader 与设备树
U-Boot 如何加载和传递设备树
U-Boot启动
08
内核启动第一阶段
解压内核、进入 head.S、设置页表
head.S页表
09
内核启动第二阶段
start_kernel、setup_arch、设备树解析入口
start_kernelsetup_arch
10
设备树解析流程
unflatten_device_tree、of_scan_flat_dt
解析unflatten
11
设备树内存映射
early_init_dt_scan_memory、内存节点解析
内存映射
12
设备树中断控制器
中断控制器解析、irqchip 初始化
中断irqchip
13
设备树时钟框架
时钟节点解析、clk provider/consumer
时钟clk
14
设备树 GPIO 子系统
GPIO 控制器解析、gpiochip 注册
GPIOgpiochip
15
设备树平台设备
of_platform_populate、平台设备创建
平台设备of
16
设备树与驱动匹配
of_match_table、设备树匹配流程
驱动匹配
17
设备树资源获取
platform_get_resource、of_iomap、of_property_read
资源iomap
18
设备树与 DMA
dma-ranges、dma-coherent、DMA 引擎初始化
DMAdma-ranges
19
设备树与电源管理
power-domains、regulator、系统休眠唤醒
电源PM
20
设备树与 PCIe
PCIe 主机桥解析、ECAM 空间、设备枚举
PCIeECAM
21
设备树与显示子系统
DRM/KMS 框架、显示控制器、HDMI/DP 节点
DRM显示
22
设备树与音频子系统
ASoC 框架、DAI 链接、codec 节点
音频ASoC
23
设备树与网络设备
MAC 节点、PHY 节点、MDIO 总线
网络PHY
24
设备树与存储设备
MMC/SDIO 控制器、NAND Flash、SPI NOR
存储MMC
25
设备树与 USB
USB 控制器、PHY、设备树描述
USBPHY
26
设备树与 IOMMU/SMMU
IOMMU 映射、设备树配置
IOMMUSMMU
27
设备树与安全
OP-TEE、安全内存、TZASC 配置
安全TEE
28
设备树调试技巧
of_dump、设备树覆盖调试、常见错误分析
调试of_dump
29
启动日志逐行分析
从 bootloader 到 init 进程的完整日志解读
日志实战
30
实战项目
为新板卡编写完整设备树并分析启动日志
项目综合