vxWorks_rom & _romCompress images on PPC larger than 1MB


    Sponsored Links


  • 1. stack tracing for ARM
    Hi, I am having problems displaying the stack trace with tt() command. It always complains "trcStack aborted: error in top frame". I have a basic vxworks 6.1 kernel that I have built using GNU compiler for ARM processor. I looked into GCC docs and tried using -mapcs-frame/-mapcs and -mno-sched-prolog options. But they do not help. There is also a mention in ARM specific vxworks docs that tt() cannot be used to trace kernel code. Has anyone tried this before? Did it work and if it did not then why it would not? Any help is greatly appreciated! Thanks! Jay
  • 2. vxsimapi
    Hi, Can anyone provide me with examples of vxsimapi use? I need to be able to generate fake interrupts for an application running under vxsim on Windows, but I'm having a hard time getting vxsimIntRaise() to work. Thanks, Avdi Grimm
  • 3. Graphics LCD with WindML support
    Hi all, I want to devlop graphics LCD driver which supports WINDML ? My Graphics lcd is of Sharp Make and i did not find any refernce driver for Sharp in WindML directory structure and it is not PCI based. Can any one guide me how to begin ? Thanks in advance, Techy
  • 4. Is there any strong reason for not using Templates in Embedded programming?
    Hi, I am just trying to find out if there is any strong reason for not using Templates in Embedded programming. When we use Templates it is going to replicate the code for different data types, thus increasing the executable size. This should not cause any performance issue. So, is it safe to say that if I can offered to have bigger image size I can go ahead and use Templates with out worrying about any other issues? Thanks.
  • 5. call distNameAdd always return ERROR
    I have configed the vxFusion, and it init success. But when I call the function distNameAdd, it always returen ERROR. Furthermore I am confused about the 2nd parameter. I think it is a return value. Perhaps the 2nd parameter was wrong. Before calling the distNameAdd(), is it necessary to call the followings functions? void distNameLibInit (); STATUS distNameInit (); Could anyone show me a demo code? Could anyone tell me what's wrong in the following code? ----------------------------- int val; if(ERROR == (distNameAdd("master", &val, sizeof(int), T_DIST_MSG_Q))) { printf("distNameAdd ERROR!\n"); } ----------------------------- Thanks in advance.

vxWorks_rom & _romCompress images on PPC larger than 1MB

Postby ams » Thu, 21 Apr 2005 23:47:33 GMT

We are developing a VxWorks BSP for a custom platform using a Motorola
MPC74xx PPC.

This always boots at 0xFFF00100 giving us only 1MB to the top of
memory, however, we have much more Flash available.

My understanding of vxWorks_rom & vxWorks_romCompress is that the
vxWorks executable is stored in a constant data block after the
initial text section in Flash. This is then either copied, or
uncompressed to the start location in RAM (0x00010000) and execution
then proceeds in RAM.

Now at the moment we can build a _romCompress image that fits in 1MB
and it works fine; however once the application code is merged with
the Kernel I expect that we will break this limit.

What do we have to do to get the code that will execute from RAM to be
put elsewhere in the ROM, for example starting at 0xFFC00000 ???

Many thanks if you find the time to reply.


Re: vxWorks_rom & _romCompress images on PPC larger than 1MB

Postby David Hamel » Mon, 25 Apr 2005 04:25:40 GMT

A few ideas
1. Rewrite the decompression section of vxWorks_romCompress to 
decompress a section rom that you prepopulate.
2. Store object modules in flash, and loadModule() the application into ram.

I like the second method.. it is more flexible.

Return to VxWorks


Who is online

Users browsing this forum: No registered users and 66 guest