U-boot引導(dǎo)VxWorks系統(tǒng)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
保證CONFIG_COMMANDS包括CFG_CMD_ELF。
就是在板子的configs(board_name).h, 加入#define CONFIG_CMD_ELF
重新編譯,現(xiàn)在有bootvx命令了。
準(zhǔn)備vxworks映像,我喜歡bin格式,xxx-objcopy -O binary vxworks vxworks.bin
vxworks必須裝載到config.h里設(shè)定的地址,比如0x100000,如果通過網(wǎng)絡(luò)下載:tftp 100000 vxworks.bin
setenv loadaddr 100000
設(shè)置啟動(dòng)參數(shù),比如MPC8xx,setenv bootargs cpm(0, 0)
bootvx
下面是bootrom的啟動(dòng)參數(shù):
boot device : motfcc
unit number : 0
processor number : 0
host name : stw8248
file name : vxWorks
inet on ethernet (e) : 192.168.12.233:ffffff00
host inet (h) : 192.168.12.234
user (u) : vxprod
ftp password (pw) : vxworks
flags (f) : 0x8
target name (tn) : stw8248
other (o) : net
把這些參數(shù)設(shè)置到bootargs中:
setenv bootargs motfcc(0,0)stw8248:vxWorks e=192.168.12.233:ffffff00 h=192.168.12.234
g=192.168.12.1 u=vxprod pw=vxworks f=0x08 tn=stw8248 o=net
1)在引導(dǎo)內(nèi)核之前必須設(shè)置一些相關(guān)的環(huán)境變量,如下:
setenv bootdelay 3 (設(shè)置引導(dǎo)內(nèi)核之前的等待時(shí)間)
setenv bootaddr 20000700 (啟動(dòng)參數(shù)存放地址)
setenv loadaddr 22000000 (內(nèi)核加載地址)
setenv bootargs zlh(0,0)sei:vxWorks e=10.10.150.1:0xffffff00 h=10.10.150.232 g=0.0.0.0 u=imct pw=imct f=0x00 tn=imct
setenv bootcmd tftp 22000000 vxWorks;bootvx
設(shè)置完上述參數(shù)后,可以將他們保存在FLASH中,步驟如下:
protect off 10060000 1007ffff
erase 10060000 1007ffff
saveenv
這樣重新啟動(dòng)后,板子就可以自動(dòng)通過TFTP協(xié)議從主機(jī)下載vxWorks內(nèi)核并啟動(dòng)。