Dear Yuri,
now I have the first successfull experience of iMX35 downloading via
UART serial interface.
Generally speaking, its is very close to Your recomendations, below
there are some issues, which I wish to note specially.
1. The DDR was configured with DCD settings, which were performed by
series of MemoryWrite commands. It was more convenient to me to make a
separate assembler file, containing DCD table only (with corrected
endian format, MSB first), which was built in separated *.hex file. At
iMX downloading startup, this file is opening and then read row-by-row
with standard fgets(*file) command. DCD configuration completes at the
standard end of INTEL hex file.
2. To provide program image downloading in different memory areas (e.g.
I have interrupt routines in iRAM to improve the productivity), the
other INTEL hex file is also suitable, The downloading procedure is also
performing row-by-row with WriteFile commands, containing the address,
taken from hex file string (accounting the segment address from special
hex strings), the bytes counter is the number of bytes (not ASCII
chars!) in hex string and file type is unspecified (I used simple 0x00).
When whole file was donloaded, the WriteFile command with program image
start address, zero length and filetype=0xAA (application) was issued
and followed by GetStatus command to start the execution.
3. The IVT was placed right before the program image and was created in
assembler startup file with special section, linked to Start_of_RAM address.
Thank You for assistance,
Andrey.
06.03.2013 5:34, Yuri Muhin написал:
>
Freescale Community <https://community.freescale.com/index.jspa>
<https://community.freescale.com/index.jspa>
>
How do you make a program that runs on the iRAM?
created by Yuri Muhin <https://community.freescale.com/people/Yuri> in
/i.MX Community/ - View the full discussion
<https://community.freescale.com/message/318319#318319>