Embedded TCP/IP stack
4.1.0
|
Add FNET Bootloader support to an existing project
The Bootloader reserves the first 52 Kbytes of the on-chip Flash memory for its own needs (actually it can occupy less space).
The last page of the on-chip Flash memory is used by the Bootloader for parameter storage and may be modified by a user application to change the Bootloader behaviour.
To use an existing application with the FNET Bootloader, the following changes should be applied in the application project:
- Add additional sections to the application linker command file and update the already defined memory sections to avoid section overlapping. The example of MCF52259 lcf file modification:
... MEMORY { # 512KB FLASH fnet_bootloader (RX) : ORIGIN = 0x00000000, LENGTH = 0x0000D000 # 52KB (Reserved for FNET Bootloader) vectorrom (RX) : ORIGIN = 0x0000D000, LENGTH = 0x00000400 code (RX) : ORIGIN = 0x0000D400, LENGTH = 0x0007DC00 fnet_params (RW) : ORIGIN = 0x0007F000, LENGTH = 0x00001000 # 4Kbytes (Last logical-block reserved for parameters) vectorram (RWX) : ORIGIN = 0x20000000, LENGTH = 0x00000400 # 64KB SRAM userram (RWX) : ORIGIN = 0x20000400, LENGTH = 0x0000FC00 } ...
- An application may change the Bootloader parameters. They are placed at the beginning of the last logical-block of the on-chip flash memory.
The Bootloader parameters organization is defined by thefapp_params_flash
structure placed in thefnet\fnet_demos\common\fnet_application\fapp_params.h
- Make sure that your application uses the interrupt vector table copied into RAM area, because the ROM-based table is owned by the Bootloader.
© 2005-2018 by Andrey Butok. http://fnet.sourceforge.net