在弄一个项目的SD卡配置的时候曾经碰到一个很扯蛋的问题
我明明修改的设备树文件配置了SD卡中断号和触发方式,但是SD卡插入没有反应
在alps/out/target/product/T99651AA2/obj/KERNEL_OBJ/arch/arm/boot/dts这个目录下有一个编译出来的tmp隐藏文件:
.T99651AA2.dtb.dts.tmp
打开这个文件,发现里面SD卡中断号和触发方式没有改
于是我删除out底下KERNEL_OBJ整个目录,然后全编。就ok了
这个原因应该是举个例子,我改的是A.dtsi。然后B.dtsi去include包含这个A.dtsi
所以我改了A.dtsi,A.dtsi的时间戳发生改变了,但是B.dtsi的时间戳并没有变,所以B.dtsi不会再次include新改的A.dtsi。
所以这样导致最后dtsi修改没有生效。
所以如果改了设备树,发现不好使。就去查看“alps/out/target/product/项目名/obj/KERNEL_OBJ/arch/arm/boot/dts/.项目名.dtb.dts.tmp”看看修改是否生效了