update_dtb 程序是給 allwiner tina linux 專門寫的小工具。
舉個例子,使用 pwm0 的時候會發現系統對此的配置不存在 pio 的表中,所以我們需要對其配置進行更新,那么如何在不燒錄鏡像的情況下改變設備結點的配置呢?
用 fdisk -l 查一下磁盤,不同的存儲介質名稱不同,比如 /dev/mtd 。
root@sipeed:/# fdisk -l
Found valid GPT with protective MBR; using GPT
Disk /dev/mmcblk0: 1953792 sectors, 954M
Logical sector size: 512
Disk identifier (GUID): ab6f3888-569a-4926-9668-80941dcb40bc
Partition table holds up to 6 entries
First usable sector is 49152, last usable sector is 1953758
root@sipeed:/# update_dtb /dev/mmcblk0 sipeed.dtb
update dtb over.
root@sipeed:/# reboot
可以看到修改成功,但又被 lcd 占用了,剩下的繼續修改設備樹配置文件即可。
用 dd 導出一下 dtb 文件,做一下 512 字節的對齊。
- dd if=./image/sunxi.dtb of=sipeed.dtb bs=72k count=1 conv=sync
注:可以加 dump 把當前的設備樹導出來,至於其他的同理!