Chinaunix首页 | 论坛 | 博客
  • 博客访问: 567237
  • 博文数量: 169
  • 博客积分: 2656
  • 博客等级: 少校
  • 技术积分: 1685
  • 用 户 组: 普通用户
  • 注册时间: 2009-07-30 13:03
文章分类

全部博文(169)

文章存档

2011年(1)

2010年(135)

2009年(33)

我的朋友

分类: 嵌入式

2010-06-27 08:50:32

I have a working system, PowerPC embedded in Xilinx Virtex II Pro, that
??does boot into Linux using u-boot 1.1.3; but I need to load a VxWorks
??(6.3) image and boot from that. I have read the documentation, but I
??don't know what my entry point for mkimage to use, sysInit( )? What
??should my load address be?
??
??To date I have used the following command
?? mkimage -O VxWorks -A ppc -C none -a 0x00 -e 0x00 \
?? -n vxWorks1a.msc -d ./vxWorks ./vxworks1a
??
??I load the resulting file (vxworks1a) to the device, and attempt to run
??the it
?? => loadb 0x00200000
?? ## Ready for binary (kermit) download to 0x00200000 at 115200
??bps...
?? ## Total Size = 0x000e09b6 = 919990 Bytes
?? ## Start Addr = 0x00200000
?? =>
?? =>
?? =>
?? =>
?? => bootm 0x00200000
?? ## Booting image at 00200000 ...
?? Image Name: vxWorks3.msc
?? Image Type: PowerPC VxWorks Kernel Image (uncompressed)
?? Data Size: 919926 Bytes = 898.4 kB
?? Load Address: 00000000
?? Entry Point: 00000000
?? Verifying Checksum ... OK
?? OK
??The system never returns from 'OK'. What am I doing wrong?
??
??============================================================================================
??
??You have to pass as address the entry point of the vxworks kernel.
??On my PPC405 board I had no problem with the following steps
??I have in my config.h a
?? RAM_LOW_ADRS = 00010000 ;
??I did no call mkImage for my vxWorks (5.5.1), but copied it directly into
??the ram
??at an address which does not conflict with my RAM_LOW_ADRS
??e.g. loadb 0x00200000 then I call
??bootm 0x00010000 ;
??
??On the Yosemite PPC440EP evaluation board, my vxWorks (6.3) hangs too. I had
??not yet a chance to figure out why, but I think there might be some
??differences into how the HW is mapped into the memory space.
??
??Best regards
??
??Niklaus Giger
??
??===========================================================================
??The VxWorks image is an elf image and has it's load address encoded. Why not
??use this information (see below)?
??
??Why don't you just use the U-Boot command for booting VxWorks images "bootvx"?
??One reason could be, that you don't have support for this built into your
??U-Boot image (you have to include CFG_CMD_ELF in the commands).
??
??So either use the bootvx command right away, or rebuild your U-Boot image with
??support for the "elf-" commands (like bootelf or bootvx).
??
??Something like:
??
??=> tftp 800000 vxWorks
??=> bootvx 800000
??
??Please note that you also have to setup the "bootargs" environment variable.
??This will be copied into the VxWorks bootline (on PPC's at 0x4200).
??
??Best regards,
??Stefan
阅读(2728) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~