Set correct ram start address for supported AVR.
[bertos.git] / bertos / cpu / attr.h
index 837ccfb82cabc6512f1d352ea2792946adf50d2e..bd74d5c518647ef9ff1e87389e9706c42331cbea 100644 (file)
        #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
 
 #else
        #error No CPU_... defined.