【版权申明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权)
Linux设备树的一些命令
1. 编译设备树
# 在Linux kernel的源目录下:
make ARCH=arm CROSS_COMPILE=arm-xxxxx-linux- dtbs
2. 反编译设备树
# 在Linux kernel的源目录下(在其他目录也行):
scripts/dtc/dtc -I dtb -O dts xxxx.dtb -o xxxx.dts
3. kernel起来后查看device tree的信息
cd /proc/device-tree/
/sys/firmware/devicetree/base # ls
#address-cells led
#size-cells media
aliases memory
chosen model
clock@12010000 name
compatible soc
cpus syscounter
interrupt-controller@10300000
4. 设备树 与 设备驱动总线平台 的联系
/sys/devices/platform # ls
120D6100.led media soc
Fixed MDIO bus.0 power syscounter
alarmtimer regulatory.0 uevent
/sys/devices/platform # cd 120D6100.led
/sys/devices/platform/111f0024.led # ls
driver_override of_node subsystem
modalias power uevent
/sys/devices/platform/111f0024.led # cd of_node/
/sys/firmware/devicetree/base/led # ls
compatible name reg
/sys/firmware/devicetree/base/led # cat compatible
ybk_led
/sys/firmware/devicetree/base/led # cat name
led
/sys/firmware/devicetree/base/led # cat reg
$
这里要说明的是如果设备下面有of_node,就证明这个platform_device是通过设备树传参来创建的。否则不是通过设备树传参创建的.