Embedded Studio Forum
Would you like to react to this message? Create an account in a few clicks or log in to continue.

Booting a second program

2 posters

Go down

Booting a second program Empty Booting a second program

Post  calvinium Tue May 19, 2009 12:54 am

Hi,

I've been working through your article on booting one application from an alternative running one and am encountering some roadblocks. I was wondering if you could point me in the right direction. I erased the flash, and compiled and load the first application via JTAG. I ran the first application without flashing the second and expect it to erase itself, but in fact after reset, it restarted the first application again.

I have made the following assumptions about the process:

1. The first application (MyApp1, for arguments sake), uses a boot kernel nearly exactly as provided in VDSP, but with the reset and final_init_loop labels externalised.
2. MyApp1's LDF contains a memory and segment definition for a modified boot loader object (AlternateLoader.doj) at seg_ldr_space that specifies the location in flash memory of the second application (MyApp2) for the DMA transfer.
3. MyApp2 could be a stand alone app, with a stock standard boot kernel.
4. MyApp2 would be flashed into the flash memory location referenced by AlternateLoader, prior to running MyApp1.

Are these assumptions correct?

Thanks

calvinium

Posts : 1
Join date : 2009-05-17

Back to top Go down

Booting a second program Empty Re: Booting a second program

Post  lzmind Fri Jun 12, 2009 12:13 pm

I'm sorry to respond your post so lately but I was on biz trip and then vacation.

Booting second app from the first one really needs clear understanding of the boot kernal and detailed attention to a revised boot kernal that shall be contained in the first app. You are not the only one who encountered obstacles in this regard. I don't know if you have solved your issue after your posting. Here are some thoughts.

1. You said your first app is supposed to erase itself after it is booted to the internal RAM but it starts to run again after reset, I assume that the erase function did not does the job.

2. The first app shall contain a revised boot kernal that is run to boot the second app.

3. Since your second app is a standalone app that also contains a boot kernal at the top of the image, you should skip the 256 words in the second app image when you load it from the first one.

If you still have issues, please feel free to post it.

lzmind

Posts : 18
Join date : 2008-08-20

Back to top Go down

Back to top


 
Permissions in this forum:
You cannot reply to topics in this forum