反编译dtb文件

在目录下
android/out/target/product/项目名/obj/KERNEL_OBJ

scripts/dtc/dtc -I dtb -O dts -o now.dts arch/arm/boot/dts/qcom/生成的.dtb

然后分析now.dts即为反编译生成的总的dts

修改了dtsi/dts需要将obj/KERNEL_OBJ目录删除掉,或手动touch一下新修改文件的时间,才能生效(确保编译到的话,可以加可产生编译错误的代码确认)

查找dtb生成的方法,只有.dts的文件才会生成dtb及中间文件

find ./ -iname *.dtb.dts.tmp
find ./linux-kernel/ -iname *.dtb.dts.tmp
./linux-kernel/arch/arm64/boot/dts/ti/.k3-j721e-common-proc-board.dtb.dts.tmp
./linux-kernel/arch/arm64/boot/dts/ti/.k3-j721e-proc-board-tps65917.dtb.dts.tmp



find ./linux-kernel/arch/arm64/boot/dts/ti/ -iname *dtb
./linux-kernel/arch/arm64/boot/dts/ti/k3-j721e-proc-board-tps65917.dtb
./linux-kernel/arch/arm64/boot/dts/ti/k3-j721e-common-proc-board.dtb


dtbo不识别

failed on fdt_overlay_apply(): FDT_ERR_NOTFOUND
make sure you've compiled with -@

发现ok的有__symbols__
在这里插入图片描述
设备树知识小全(六):设备节点及label的命名

在这里插入图片描述


board-support/linux-kernel/scripts/Makefile.lib
@@ -320,7 +320,7 @@ $(obj)/%.dtb.S: $(obj)/%.dtb FORCE
 quiet_cmd_dtc = DTC     $@
 cmd_dtc = $(HOSTCC) -E $(dtc_cpp_flags) -x assembler-with-cpp -o $(dtc-tmp) $< ; \
        $(DTC) -O $(patsubst .%,%,$(suffix $@)) -o $@ -b 0 \
-               $(addprefix -i,$(dir $<) $(DTC_INCLUDE)) $(DTC_FLAGS) \
+               $(addprefix -i,$(dir $<) $(DTC_INCLUDE)) -@ \
                -d $(depfile).dtc.tmp $(dtc-tmp) ; \
        cat $(depfile).pre.tmp $(depfile).dtc.tmp > $(depfile)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值