uboot 启动 VxWorks调试记录

硬件环境p2020,操作系统VxWorks6.9

板卡状态:可以启动uboot,启动不了bootrom。

 

前期板卡启动bootrom无果,可能是遇到了版型适配的问题。

解决无果,只能另寻他路。从uboot去引导VxWorks。

 

网上看了一堆相关uboot启动VxWorks的方法。

主要思路为:(1)烧写uboot;(2)设置uboot环境变量;(3)配置引导vx;

(1)烧写uboot就不赘述了,这一步没完成,就别想其他了。

(2)uboot环境变量配置:

 

第一步:

->setenv bootaddr 

bootaddr的值在VxWorks的bsp中有体现:

The default value is
     * (LOCAL_MEM_LOCAL_ADRS + BOOT_LINE_OFFSET) as defined by
     * VxWorks BSP. For example, on PowerPC it defaults to 0x4200.

第二步,->setenv bootargs

若第二步没定义

->setenv bootdev

->setenv bootfile

->setenv ipaddr

->setenv serverip

->setenv gatewayip

->setenv hostname

->setenv othbootargs

 - vxWorks boot parameters:
 
         bootvx constructs a valid bootline using the following
         environments variables: bootdev, bootfile, ipaddr, netmask,
         serverip, gatewayip, hostname, othbootargs.
         It loads the vxWorks image pointed bootfile.
 
         Note: If a "bootargs" environment is defined, it will overwride
         the defaults discussed just above.

至此,uboot环境变量设置完毕。

(3)配置vx;

目前还不清楚需不需要修改vx镜像配置内容,网上有提及VxWorks的law与uboot适配的问题,还有关于uboot的MMU打开的问题。还有关于ubootccsbar配置问题。

 

至此,所有的配置工作完成。

下面开始启动vx操作:

第一步,通过tftp将VxWorks镜像拷贝到0x1000000地址处。

tftp 0x1000000 vxWorks

第二步,启动vx。

=> bootvx

打印输出如下:
## Ethernet MAC address not copied to NV RAM
## Using bootline (@ 0x4200): motetsec(0,0)host:vxWorks h=10.0.1.230 e=10.0.1.88 u=vxworks pw=vxworks f=0x0host:vxWorks e=10.0.1.88:ff000000 h=10.0.1.230 g=10.0.1.1 tn=unknown 
## Starting vxWorks at 0x00100000 ...

 

 

目前的调试工作到这步卡住了,问题可能出在两个地方,一个是环境变量修改,这个好解决。另一个是关于uboot和vx镜像不适配的问题。

你可能感兴趣的:(PPC,linux,u-boot,vxworks,vx)