Boot vxWorks from flash via U-Boot - VxWorks

This is a discussion on Boot vxWorks from flash via U-Boot - VxWorks ; Hi all! To build a binary image which I can boot from flash, i choose the setting: "default_rom" and add a new build target with ".bin" suffix. This results in a binary file (non-elf). To start this binary Image, I ...

+ Reply to Thread
Results 1 to 2 of 2

Thread: Boot vxWorks from flash via U-Boot

  1. Boot vxWorks from flash via U-Boot

    Hi all!

    To build a binary image which I can boot from flash, i choose the
    setting: "default_rom" and add a new build target with ".bin" suffix.
    This results in a binary file (non-elf).
    To start this binary Image, I use the U-Boot bootloader:
    Everything works fine if I copy the image to RAM, via TFTP (0x100000)
    and do "go 0x100000": vxWorks is started.
    This is already strange In my opinion, because I created a
    "default_rom" image. Why can I start it from RAM, then?

    Now, if I burn this image to my flash location (0xFF80000), i cannot
    start it. Insted a "go 0xFF800000" hangs the processor. I always
    thought, the image should copy itself to ram automatically and the
    start itself, but it seems that it doesn't do as it should.
    I used the RTOS MQX before and had no problems with the application
    image booting from flash via U-Boot.
    My U-Boot Version is 1.0.0.1


    Regards
    Ruben

  2. Re: Boot vxWorks from flash via U-Boot

    I have recently been doing some work with U-Boot and VxWorks, so
    hopefully I can offer some pointers to help you. I have been creating
    the image in ELF format, and have NAND flash rather than NOR, so that
    might change some things. If you have configured the BSP to run from a
    location in RAM, then once it is loaded there, it runs. Burning that
    image into flash at a different location will mean the addressing is
    incorrect and it wont run. Therefore you would need to change the
    configuration to run from the address where you want it to run from.

    Another point that might not be valid for your project is the use of a
    U-Boot header. I have had to add a header to tell U-Boot where to load
    the image from NAND flash into RAM and then execute it, rather than
    using a VxWorks bootrom.

    Hope that helps
    Gavin Nottage
    Harmonic Software Systems
    www.harmonicss.co.uk

+ Reply to Thread