开发板是AM437X_GP_EVM,ubuntu里修改了am437x-gp-evm.dts后编译生成dtb,通过tftp方式启动开发板,启动后发现设备树没有更新,请问如何更新?
通过SD卡启动,发现设备树是修改过的,tftp方式如何加载修改过的dtb呢?
Nancy Wang:
请提供启动的log文件,看一下是从哪里获取DT文件的。
yongqing wang:
参考这个帖子:blog.csdn.net/…/101386991
qingyulan:
回复 Nancy Wang:
如图,谢谢
yongqing wang:
回复 qingyulan:
你这个截图不是已经正常TFTP 装载了dtb了吗?
qingyulan:
回复 yongqing wang:
但装载的并不是我修改过的dts文件。我添加了一个按键设备,但在/sys/class里没找到。但通过SD卡启动的设备树里就有
yongqing wang:
回复 qingyulan:
你先确定一下这个dtb是不是你修改过的
qingyulan:
回复 yongqing wang:
不是,确定不是修改过的
yongqing wang:
回复 qingyulan:
我的意思是说确定你TFTP装载的dtb是否是错的,是否装载的时候就是错的
你先看看dtb这个修改前后的文件大小是否有差异
qingyulan:
回复 yongqing wang:
为了确认,我特意删除tftp服务器/tftproot目录下的am437x-gp-gvm.dtb,然后重启,果然无法加载dtb文件了。然后我又把/d/ti-sdk/board-support/linux-4.19.59+gitAUTOINC+5f8c1c6121-g5f8c1c6121/arch/arm/boot/dts/am437x-gp-gvm.dtb文件拷贝到/tftproot目录下,重启又能加载了,这次查看开发板的/sys/class/目录,终于找到新添加的设备了。那就奇怪,运行官方的./setup后,生成的tftp服务器目录/tftproot下的am437x-gp-gvm.dtb是从哪里来的呢?如何指定为自动是新修改的dtb呢?
yongqing wang:
回复 qingyulan:
直接在你的SDK里搜一下am437x-gp-gvm.dtb这个文件,估计有多个
setup直接拷贝了未编译的dtb到那个目录下