I am trying to run FreeRTOS on s3c2440 ARM920 based SoC.
The development board I am using doesn’t have a NOR flash to boot from. or any way to change the address mapping.
the chip has an internal RAM called stepping stone which loads first 4K of NAND on reset.
The rest of the RAM starts on this board at 0x30000000.
I am using IAR development environment and i am able to run my application/OS by downloading it
to RAM… ie 0x00 to 4K ,then continuing at 0x30000000 till 0x38000000.(64MB)
What I don’t know is how to start the Application /OS from NAND. the options i can think of are
1.write a loader program at first 4k of NAND ,which is loaded in to stepping stone automatically in reset
and the loader will then copy the application/OS to the RAM.
but in this case how can I configure the exception vectors lying in the internal RAM/steppingstone once
the system starts on the OS/application image in the external RAM.
2.use no loading program.make and burn the application/os image directly on to the beginning of the NAND.
on reset the the system starts running the first 4K copied in to the internal RAM.code in the first 4K will copy the rest of the
image to external RAM .
this seems the solution, but can someone familiar with IAR development environment tell me how to do this.
i thought of doing something with MMU, but i think i am making things more complex.
Appreciate any answer