What Am I Missing? - VxWorks

This is a discussion on What Am I Missing? - VxWorks ; OK, I know this should be really simple, but I just can't seem to figure it out. I'm using Workbench 3.0 and vxWorks 6.6 to develop an application for a PowerPC target (a Wind River wrSbc8349 board). I built a ...

+ Reply to Thread
Results 1 to 2 of 2

Thread: What Am I Missing?

  1. What Am I Missing?

    OK, I know this should be really simple, but I just can't seem to
    figure it out.

    I'm using Workbench 3.0 and vxWorks 6.6 to develop an application for
    a PowerPC target (a Wind River wrSbc8349 board). I built a standard
    bootloader project based on the Wind-River-supplied BSP for this
    board. I program the resulting bootrom.bin into the flash at the reset
    vector address (0xfff00100) and it boots up just fine. Using this
    bootloader I can load my vxWorks kernel (built frmo a standard
    Workbench vxWorks image project based on the same BSP) over the
    network via TFTP and everything works as expected. AFAICT there is no
    problem with either the bootloader or the kernel image.

    Now I want to boot entirely from flash as opposed to over the network.
    Using the same vxWorks image project that works fine in the scenario
    above, I changed the active build spec to "default_rom", added a new
    build target called "vxWorks_rom.bin," and rebuilt everything. My
    understanding is that this should generate a vxWorks kernel image that
    will boot itself from flash, copy itself to RAM, and continue
    execution from there just as if it had been copied into RAM from a
    network server by a bootloader. However, when I program this new .bin
    file into the flash, it generates an exception almost immediately
    after reset; at most a couple of dozen instructions get executed
    before the crash. Using the OCD debugger I looked at the instructions
    at the reset vector, and they look the same as those used by the
    (working) bootloader. I have yet to perform an exhaustive analysis to
    see if/where the generated code differs, but that's next on my list if
    no other answer presents itself first.

    Anyway, to those of you who have gotten this to work, am I doing
    something wrong? Did I miss any steps? I'm sure it's something
    forehead-slapping simple, and probably right under my nose, but I need
    a little nudge to see it.

    Thanks for your help!

  2. Re: What Am I Missing?

    Hi Fred,

    I have more or less the same problem. Did you manage to solve it?

    Regards.

+ Reply to Thread