赞
踩
Android dtbo.img反编译查看设备树:
参考文档:
https://blog.csdn.net/qianxuedegushi/article/details/107224575
反编译andriod dtbo.img 为dts
Android设备和设备树有关的刷机镜像有两个:dtb.img和dtbo.img
1, 安装dtc
sudo apt-get install device-tree-compiler -y
2, 转换dtbo.img到dtb
android源代码下编译: mkdtimg
cd out/host/linux-x86/bin下执行:
mkdtimg dump dtbo.img -b mydtb
3,转换dtb到dts
dtc -I dtb -O dts mydtb.42 -o mydts
4,转换dtb.img到dts
dtc -I dtb -O dts dtb.img -o dtbimg_to_dts
例子: 查看qcom,wsa-max-devs的值是多上?
kalama:/proc/device-tree/soc/spf_core_platform/sound # cat compatible qcom,kalama-asoc-snd kalama:/proc/device-tree/soc/spf_core_platform/sound # cat qcom,model kalama-qrd-snd-card 我把android源代码编译的out/host/linux-x86拷贝到了~/my_bin目录了。 ~/my_bin$ ./linux-x86/bin/mkdtimg dump dtbo.img -b mydtb (FDT)compatible = qcom,kalama-qrd // 设备树用的是qcom,kalama-qrd dt_table_entry[42]: // 编号42 dt_size = 387535 dt_offset = 9046604 id = 00000000 rev = 00000000 custom[0] = 00000000 custom[1] = 00000000 custom[2] = 00000000 custom[3] = 00000000 (FDT)size = 387535 (FDT)compatible = qcom,kalama-qrd dt_table_entry[43]: dt_size = 387683 dt_offset = 9434139 id = 00000000 rev = 00000000 custom[0] = 00000000 custom[1] = 00000000 custom[2] = 00000000 custom[3] = 00000000 (FDT)size = 387683 ~/my_bin$ dtc -I dtb -O dts mydtb.42 -o mydts ~/my_bin$ ls 111 mydtb.1 mydtb.13 mydtb.17 mydtb.20 mydtb.24 mydtb.28 mydtb.31 mydtb.35 mydtb.39 mydtb.42 mydtb.46 mydtb.5 mydtb.53 mydtb.6 mydts dtbo.img mydtb.10 mydtb.14 mydtb.18 mydtb.21 mydtb.25 mydtb.29 mydtb.32 mydtb.36 mydtb.4 mydtb.43 mydtb.47 mydtb.50 mydtb.54 mydtb.7 linux-x86 mydtb.11 mydtb.15 mydtb.19 mydtb.22 mydtb.26 mydtb.3 mydtb.33 mydtb.37 mydtb.40 mydtb.44 mydtb.48 mydtb.51 mydtb.55 mydtb.8 mydtb.0 mydtb.12 mydtb.16 mydtb.2 mydtb.23 mydtb.27 mydtb.30 mydtb.34 mydtb.38 mydtb.41 mydtb.45 mydtb.49 mydtb.52 mydtb.56 mydtb.9 ~/my_bin$ gedit mydts // 查看反编译出的mydts 搜索qcom,wsa-max-devs: qcom,wsa-max-devs = <0x00>;
通过hexdump命令也可以查看Android设备里的设备树的值。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。