- 論壇徽章:
- 0
|
6.4.3 U-Boot的環(huán)境變量
有點(diǎn)類似Shell,U-Boot也使用環(huán)境變量。可以通過printenv命令查看環(huán)境變量的設(shè)置。
U-Boot> printenv
bootdelay=3
baudrate=115200
netmask=255.255.0.0
ethaddr=12:34:56:78:90:ab
bootfile=uImage
bootargs=console=ttyS0,115200 root=/dev/ram rw initrd=0x30800000,8M
bootcmd=tftp 0x30008000 zImage;go 0x30008000
serverip=192.168.1.1
ipaddr=192.168.1.100
stdin=serial
stdout=serial
stderr=serial
Environment size: 337/131068 bytes
U-Boot>
表6.5是常用環(huán)境變量的含義解釋。通過printenv命令可以打印出這些變量的值。
表6.5 U-Boot環(huán)境變量的解釋說明
環(huán) 境 變 量
解 釋 說 明
bootdelay
定義執(zhí)行自動(dòng)啟動(dòng)的等候秒數(shù)
baudrate
定義串口控制臺(tái)的波特率
netmask
定義以太網(wǎng)接口的掩碼
ethaddr
定義以太網(wǎng)接口的MAC地址
bootfile
定義缺省的下載文件
bootargs
定義傳遞給Linux內(nèi)核的命令行參數(shù)
bootcmd
定義自動(dòng)啟動(dòng)時(shí)執(zhí)行的幾條命令
serverip
定義tftp服務(wù)器端的IP地址
ipaddr
定義本地的IP地址
stdin
定義標(biāo)準(zhǔn)輸入設(shè)備,一般是串口
stdout
定義標(biāo)準(zhǔn)輸出設(shè)備,一般是串口
stderr
定義標(biāo)準(zhǔn)出錯(cuò)信息輸出設(shè)備,一般是串口
U-Boot的環(huán)境變量都可以有缺省值,也可以修改并且保存在參數(shù)區(qū)。U-Boot的參數(shù)區(qū)一般有EEPROM和Flash兩種設(shè)備。
環(huán)境變量的設(shè)置命令為setenv,在6.2.2節(jié)有命令的解釋。
舉例說明環(huán)境變量的使用。
=>setenv serverip 192.168.1.1
=>setenv ipaddr 192.168.1.100
=>setenv rootpath "/usr/local/arm/3.3.2/rootfs"
=>setenv bootargs "root=/dev/nfs rw nfsroot=\$(serverip):\$(rootpath) ip=
\$(ipaddr) "
=>setenv kernel_addr 30000000
=>setenv nfscmd "tftp \$(kernel_addr) uImage; bootm \$(kernel_addr) "
=>run nfscmd
上面定義的環(huán)境變量有serverip ipaddr rootpath bootargs kernel_addr。環(huán)境變量bootargs中還使用了環(huán)境變量,bootargs定義命令行參數(shù),通過bootm命令傳遞給內(nèi)核。環(huán)境變量nfscmd中也使用了環(huán)境變量,功能是把uImage下載到指定的地址并且引導(dǎo)起來?梢酝ㄟ^run命令執(zhí)行nfscmd腳本。 |
|