mirror of
https://github.com/FreeRTOS/FreeRTOS-Kernel.git
synced 2025-08-20 01:58:32 -04:00
Prepare for V5.3.1 release.
This commit is contained in:
parent
fe1295fd25
commit
f1d6aa1a06
440 changed files with 7276 additions and 408 deletions
77
Demo/ColdFire_MCF51CN128_CodeWarrior/Sources/startcf.h
Normal file
77
Demo/ColdFire_MCF51CN128_CodeWarrior/Sources/startcf.h
Normal file
|
@ -0,0 +1,77 @@
|
|||
/******************************************************************************
|
||||
FILE : startcf.h
|
||||
PURPOSE : startup code for ColdFire
|
||||
LANGUAGE: C
|
||||
|
||||
|
||||
Notes:
|
||||
1) Default entry point is _startup.
|
||||
. disable interrupts
|
||||
. the SP is set to __SP_AFTER_RESET
|
||||
. SP must be initialized to valid memory
|
||||
in case the memory it points to is not valid using MEMORY_INIT macro
|
||||
2) __initialize_hardware is called. Here you can initialize memory and some peripherics
|
||||
at this point global variables are not initialized yet
|
||||
3) After __initialize_hardware memory is setup; initialize SP to _SP_INIT and perform
|
||||
needed initialisations for the language (clear memory, data rom copy).
|
||||
4) void __initialize_system(void); is called
|
||||
to allow additional hardware initialization (UART, GPIOs, etc...)
|
||||
5) Jump to main
|
||||
|
||||
*/
|
||||
/********************************************************************************/
|
||||
|
||||
#ifndef STARTCF_H
|
||||
#define STARTCF_H
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#ifdef STARTCF_INCLUDE
|
||||
#include STARTCF_INCLUDE
|
||||
#endif
|
||||
|
||||
#pragma warn_any_ptr_int_conv off
|
||||
#pragma warn_absolute off
|
||||
|
||||
extern unsigned long far __SP_INIT[];
|
||||
extern unsigned long far __SP_AFTER_RESET[];
|
||||
|
||||
#ifndef MEMORY_INIT
|
||||
/* If MEMORY_INIT is set then it performs
|
||||
minimal memory initialization (to preset SP to __SP_AFTER_RESET, etc...)
|
||||
*/
|
||||
#define MEMORY_INIT
|
||||
#endif
|
||||
|
||||
void _startup(void);
|
||||
|
||||
#ifndef SUPPORT_ROM_TO_RAM
|
||||
/*
|
||||
* If SUPPORT_ROM_TO_RAM is set, _S_romp is used to define the copy to be performed.
|
||||
* If it is not set, there's a single block to copy, performed directly without
|
||||
* using the __S_romp structure, based on __DATA_RAM, __DATA_ROM and
|
||||
* __DATA_END symbols.
|
||||
*
|
||||
* Set to 0 for more aggressive dead stripping ...
|
||||
*/
|
||||
#define SUPPORT_ROM_TO_RAM 1
|
||||
#endif
|
||||
|
||||
/* format of the ROM table info entry ... */
|
||||
typedef struct RomInfo {
|
||||
void *Source;
|
||||
void *Target;
|
||||
unsigned long Size;
|
||||
} RomInfo;
|
||||
|
||||
/* imported data */
|
||||
extern far RomInfo _S_romp[]; /* linker defined symbol */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
Loading…
Add table
Add a link
Reference in a new issue