#define CPU_HARVARD 0
/// Valid pointers should be >= than this value (used for debug)
- #define CPU_RAM_START 0x200
+ #if CPU_ARM_AT91
+ #define CPU_RAM_START 0x00200000
+ #else
+ #warning Fix CPU_RAM_START address for your ARM, default value set to 0x200
+ #define CPU_RAM_START 0x200
+ #endif
#ifdef __IAR_SYSTEMS_ICC__
#warning Check CPU_BYTE_ORDER
*/
#define ISR_FUNC __attribute__((interrupt))
+ /*
+ * Function attribute to move it into ram memory.
+ */
+ #define RAM_FUNC __attribute__((section(".data")))
+
#endif /* !__IAR_SYSTEMS_ICC_ */
#elif CPU_PPC
#define CPU_HARVARD 1
/// Valid pointers should be >= than this value (used for debug)
- #define CPU_RAM_START 0x100
+ #if CPU_AVR_ATMEGA8 || CPU_AVR_ATMEGA32 || CPU_AVR_ATMEGA103
+ #define CPU_RAM_START 0x60
+ #elif CPU_AVR_ATMEGA64 || CPU_AVR_ATMEGA128 || CPU_AVR_ATMEGA168
+ #define CPU_RAM_START 0x100
+ #elif CPU_AVR_ATMEGA1281
+ #define CPU_RAM_START 0x200
+ #else
+ #warning Fix CPU_RAM_START address for your AVR, default value set to 0x100
+ #define CPU_RAM_START 0x100
+ #endif
#else
#error No CPU_... defined.