SVNSILENT
[bertos.git] / bertos / cpu / arm / io / at91sam7.h
index c983f50beaa4066523f33a705e2d60787e5a3984..0bf835f630c0c2bfe66b2d2a1476150b332a1d6a 100644 (file)
@@ -30,7 +30,6 @@
  *
  * -->
  *
- * \version $Id$
  *
  * \author Francesco Sacchi <batt@develer.com>
  * \author Daniele Basile <asterix@develer.com>
 
 #endif
 
+#if CPU_ARM_AT91SAM7S64
+       #define FLASH_MEM_SIZE          0x10000UL ///< Internal flash memory size
+       #define FLASH_PAGE_SIZE_BYTES         128 ///< Size of cpu flash memory page in bytes
+       #define FLASH_BANKS_NUM                 1 ///< Number of flash banks
+       #define FLASH_SECTORS_NUM              16 ///< Number of flash sector
+       #define FLASH_PAGE_PER_SECTOR          32 ///< Number of page for sector
+
+#elif CPU_ARM_AT91SAM7S128 || CPU_ARM_AT91SAM7X128
+       #define FLASH_MEM_SIZE          0x20000UL ///< Internal flash memory size
+       #define FLASH_PAGE_SIZE_BYTES         256 ///< Size of cpu flash memory page in bytes
+       #define FLASH_BANKS_NUM                 1 ///< Number of flash banks
+       #define FLASH_SECTORS_NUM               8 ///< Number of flash sector
+       #define FLASH_PAGE_PER_SECTOR          64 ///< Number of page for sector
+
+#elif CPU_ARM_AT91SAM7S256 || CPU_ARM_AT91SAM7X256
+       #define FLASH_MEM_SIZE          0x40000UL ///< Internal flash memory size
+       #define FLASH_PAGE_SIZE_BYTES         256 ///< Size of cpu flash memory page in bytes
+       #define FLASH_BANKS_NUM                 1 ///< Number of flash banks
+       #define FLASH_SECTORS_NUM              16 ///< Number of flash sector
+       #define FLASH_PAGE_PER_SECTOR          64 ///< Number of page for sector
+
+#elif CPU_ARM_AT91SAM7S512 || CPU_ARM_AT91SAM7X512
+       #define FLASH_MEM_SIZE          0x80000UL ///< Internal flash memory size
+       #define FLASH_PAGE_SIZE_BYTES         256 ///< Size of cpu flash memory page in bytes
+       #define FLASH_BANKS_NUM                 2 ///< Number of flash banks
+       #define FLASH_SECTORS_NUM              32 ///< Number of flash sector
+       #define FLASH_PAGE_PER_SECTOR          64 ///< Number of page for sector
+
+#else
+       #error Memory size definition for selected ARM CPU
+#endif
+
 #include "at91_aic.h"
 #include "at91_pit.h"
 #include "at91_pmc.h"