**:
依linux community的要求,從linux-3.5後,新提交的code必須對device tree進行支援。下面介紹如何使u-boot支援device tree,以及fdt命令的使用。
1. u-boot對fdt(flattened device tree)的支援。
實現:只要加入
#define config_of_libfdt /* device tree support */
重新編譯u-boot,就可以實現對device tree的支援。
2. u-boot下的fdt命令使用
2.1 首先檢視fdt的幫助資訊。
u-boot>fdtfdt -flattened device tree utility commands
usage:
fdt addr
- set the fdt location to fdt move
- copy the fdt to and make it active
fdt resize - resize fdt to size +padding to 4k addr
fdt print
- recursive print starting at fdt list
- print one level starting at fdt
set - set [to ]
fdt mknode
- create a new node after fdt rm
- delete the node or fdt header -display header info
fdt bootcpu
-set boot cpuid
fdt memory
- add/update memory node
fdt rsvmem print -show current mem reserves
fdt rsvmem add
-add a mem reserve
fdt rsvmem delete
-delete a mem reserves
fdt chosen [
] - add/update the /chosen branch in
the tree
/- initrd start/end addr
note: dereference aliases by omiting the leading '/
', e.g. fdt print ethernet0.
u-boot>
2.2 使用fdt命令
u-boot> tftpboot 0x71000000 bshen/test-ek.dtb
設定fdt的位址
u-boot> fdt addr 0x71000000
然後就可以使用其餘的命令引數了
u-boot>fdt headermagic:
0xd00dfeed
totalsize:
0x1887 (6279
)off_dt_struct:
0x38
off_dt_strings:
0x1648
off_mem_rsvmap:
0x28
version:
17last_comp_version:
16boot_cpuid_phys:
0x0size_dt_strings:
0x23f
size_dt_struct:
0x1610
number mem_rsv:
0x0
fdt print 不跟引數時,列印出整顆樹
fdt print加path引數,則打path內容,如下(其中/memory是path):
u-boot> fdt print /memorymemory ;
u boot 中 tftp sf命令使用詳解
準備工作 電腦端環境 tftpd32 軟體 目標板環境 uboot 注 a.將目標板與電腦用網線設定好,並且將電腦的防火牆關閉 b.將電腦與目標板的ip位址設定成同乙個網段。例 電腦ip 192.168.1.12 目標板ip 192.168.1.13 c.在uboot命令列模式下輸入 ping 電腦...
U Boot中ubi和ubifs命令的使用
u boot mtdparts default u boot ubi part safefs 檢視當前啟用的分割槽 u boot ubi part u boot ubifsmount safefs u boot ubifsls u boot ubifsload 80008000 readme u b...
u boot 中的命令實現
u boot 中的命令實現 我們知道,u boot的執行過程是首先進行一些初始化化工作,然後在乙個死 迴圈中不斷接收串列埠的命令並進行解釋執行,下面我們就看看執行部分 的實 現,見common main.c中的run command int run command const char cmd,in...