U-boot 引导 VxWorks系统


保证CONFIG_COMMANDS包括CFG_CMD_ELF。
就是在板子的configs(board_name).h, 加入#define CONFIG_CMD_ELF
重新编译,现在有bootvx命令了。
准备vxworks映像,我喜欢bin格式,xxx-objcopy -O binary vxworks vxworks.bin
vxworks必须装载到config.h里设定的地址,比如0x100000,如果通过网络下载:tftp 100000 vxworks.bin
setenv loadaddr 100000
设置启动参数,比如MPC8xx,setenv bootargs cpm(0, 0)
bootvx
下面是bootrom的启动参数:

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 

把这些参数设置到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)在引导内核之前必须设置一些相关的环境变量,如下:
     
   setenv bootdelay 3 (设置引导内核之前的等待时间)
   setenv bootaddr  20000700 (启动参数存放地址)
   setenv loadaddr  22000000  (内核加载地址)
   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
   设置完上述参数后,可以将他们保存在FLASH中,步骤如下:
   protect off 10060000 1007ffff
   erase 10060000 1007ffff
   saveenv
这样重新启动后,板子就可以自动通过TFTP协议从主机下载vxWorks内核并启动。

你可能感兴趣的:(Boot)