🚗 车载Linux · 设备树配置与调试
📅
30章 · 从入门到实战
01
设备树基础概念
什么是设备树 · 为什么需要 · 车载角色
02
设备树语法入门
节点 · 属性 · 标签 · include
03
常用属性详解
compatible · reg · interrupts · clocks · gpios · status
04
设备树地址编码
#address-cells · #size-cells · ranges · dma-ranges
05
中断控制器
interrupt-controller · #interrupt-cells · interrupt-parent · map
06
时钟与复位
clocks · clock-names · assigned-clocks · resets
07
GPIO与Pinctrl
gpio-controller · #gpio-cells · pinctrl-0 · pinctrl-names
08
Regulator与Power
regulator节点 · regulator-name · min-microvolt
09
I2C与SPI总线
i2c节点 · spi节点 · 子节点 · reg属性
10
Display与GPU
display-timings · panel · backlight · GPU节点
11
Audio与ALSA
sound节点 · codec · dai-link · simple-audio-card
12
Camera与CSI
sensor节点 · port · endpoint · remote-endpoint
13
Ethernet与CAN
ethernet节点 · phy-handle · can节点 · can-transceiver
14
PCIe与USB
pcie节点 · usb节点 · dr_mode · maximum-speed
15
Memory与Reserved Memory
memory节点 · reserved-memory · no-map · reusable
16
Firmware与Chosen
chosen节点 · bootargs · stdout-path · firmware节点
17
Overlay机制
overlay语法 · target · __overlay__ · __fixups__
18
编译与反编译
dtc工具 · dtb生成 · fdtdump · dtc -I dtb -O dts
19
调试基础
内核启动log · of_* API · debugfs · 设备树sysfs
20
调试进阶
ftrace追踪 · 动态调试 · device tree验证工具
21
常见错误与排查
语法错误 · 地址冲突 · 中断冲突 · 资源遗漏
22
性能优化
减少节点 · 使用标签 · 避免冗余 · 合理overlay
23
安全与合规
安全启动 · 签名验证 · 合规检查 · 版本管理
24
设备树与U-Boot交互
U-Boot修改 · fdt命令 · bootm流程
25
设备树与ACPI对比
ACPI vs DT · 适用场景 · 混合使用 · 迁移策略
26
在QEMU中的使用
QEMU加载 · virtio设备 · 调试技巧
27
Yocto/Buildroot集成
设备树源文件管理 · 内核配置 · 打包
28
自动化测试
单元测试 · 集成测试 · 回归测试 · CI/CD集成
29
实战案例一:i.MX8仪表盘
基于i.MX8的仪表盘设备树配置
30
实战案例二:Jetson Orin域控
基于Jetson Orin自动驾驶域控制器设备树配置