diff options
author | Giovanni Di Sirio <gdisirio@gmail.com> | 2015-07-27 12:06:59 +0000 |
---|---|---|
committer | Giovanni Di Sirio <gdisirio@gmail.com> | 2015-07-27 12:06:59 +0000 |
commit | b03ce4e2f2f3d40db655e485816a458badfeba35 (patch) | |
tree | c413be59b24130f2a18a0a198ee544df41682541 | |
parent | 343fb915c48090bfd10ebb070e994a5c949b6be9 (diff) | |
download | ChibiOS-b03ce4e2f2f3d40db655e485816a458badfeba35.tar.gz ChibiOS-b03ce4e2f2f3d40db655e485816a458badfeba35.tar.bz2 ChibiOS-b03ce4e2f2f3d40db655e485816a458badfeba35.zip |
Cortex-M7 support in RT and NIL.
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@8115 35acf78f-673a-0410-8e92-d51de3d6d3f4
-rw-r--r-- | os/nil/ports/ARMCMx/nilcore.h | 8 | ||||
-rw-r--r-- | os/nil/ports/ARMCMx/nilcore_v7m.h | 11 | ||||
-rw-r--r-- | os/rt/ports/ARMCMx/chcore.h | 4 | ||||
-rw-r--r-- | os/rt/ports/ARMCMx/chcore_v7m.h | 11 |
4 files changed, 28 insertions, 6 deletions
diff --git a/os/nil/ports/ARMCMx/nilcore.h b/os/nil/ports/ARMCMx/nilcore.h index 8cd0d117a..20a43fadf 100644 --- a/os/nil/ports/ARMCMx/nilcore.h +++ b/os/nil/ports/ARMCMx/nilcore.h @@ -180,9 +180,11 @@ struct port_intctx {}; /* Includes the sub-architecture-specific part.*/
#if (CORTEX_MODEL == 0) || (CORTEX_MODEL == 1)
-#include "nilcore_v6m.h"
-#elif (CORTEX_MODEL == 3) || (CORTEX_MODEL == 4)
-#include "nilcore_v7m.h"
+#include "chcore_v6m.h"
+#elif (CORTEX_MODEL == 3) || (CORTEX_MODEL == 4) || (CORTEX_MODEL == 7)
+#include "chcore_v7m.h"
+#else
+#error "unknown Cortex-M variant"
#endif
#if !defined(_FROM_ASM_)
diff --git a/os/nil/ports/ARMCMx/nilcore_v7m.h b/os/nil/ports/ARMCMx/nilcore_v7m.h index d6317024e..ae030c273 100644 --- a/os/nil/ports/ARMCMx/nilcore_v7m.h +++ b/os/nil/ports/ARMCMx/nilcore_v7m.h @@ -157,12 +157,21 @@ #elif (CORTEX_MODEL == 4)
#define PORT_ARCHITECTURE_ARM_v7ME
-#define PORT_ARCHITECTURE_NAME "ARMv7-ME"
+#define PORT_ARCHITECTURE_NAME "ARMv7E-M"
#if CORTEX_USE_FPU
#define PORT_CORE_VARIANT_NAME "Cortex-M4F"
#else
#define PORT_CORE_VARIANT_NAME "Cortex-M4"
#endif
+
+#elif (CORTEX_MODEL == 7)
+#define PORT_ARCHITECTURE_ARM_v7ME
+#define PORT_ARCHITECTURE_NAME "ARMv7E-M"
+#if CORTEX_USE_FPU
+#define PORT_CORE_VARIANT_NAME "Cortex-M7F"
+#else
+#define PORT_CORE_VARIANT_NAME "Cortex-M7"
+#endif
#endif
/**
diff --git a/os/rt/ports/ARMCMx/chcore.h b/os/rt/ports/ARMCMx/chcore.h index 11d14234e..d1b2dc4fb 100644 --- a/os/rt/ports/ARMCMx/chcore.h +++ b/os/rt/ports/ARMCMx/chcore.h @@ -191,8 +191,10 @@ struct context { /* Includes the sub-architecture-specific part.*/
#if (CORTEX_MODEL == 0) || (CORTEX_MODEL == 1)
#include "chcore_v6m.h"
-#elif (CORTEX_MODEL == 3) || (CORTEX_MODEL == 4)
+#elif (CORTEX_MODEL == 3) || (CORTEX_MODEL == 4) || (CORTEX_MODEL == 7)
#include "chcore_v7m.h"
+#else
+#error "unknown Cortex-M variant"
#endif
#if !defined(_FROM_ASM_)
diff --git a/os/rt/ports/ARMCMx/chcore_v7m.h b/os/rt/ports/ARMCMx/chcore_v7m.h index 37e087102..7898e4e74 100644 --- a/os/rt/ports/ARMCMx/chcore_v7m.h +++ b/os/rt/ports/ARMCMx/chcore_v7m.h @@ -157,12 +157,21 @@ #elif (CORTEX_MODEL == 4)
#define PORT_ARCHITECTURE_ARM_v7ME
-#define PORT_ARCHITECTURE_NAME "ARMv7-ME"
+#define PORT_ARCHITECTURE_NAME "ARMv7E-M"
#if CORTEX_USE_FPU
#define PORT_CORE_VARIANT_NAME "Cortex-M4F"
#else
#define PORT_CORE_VARIANT_NAME "Cortex-M4"
#endif
+
+#elif (CORTEX_MODEL == 7)
+#define PORT_ARCHITECTURE_ARM_v7ME
+#define PORT_ARCHITECTURE_NAME "ARMv7E-M"
+#if CORTEX_USE_FPU
+#define PORT_CORE_VARIANT_NAME "Cortex-M7F"
+#else
+#define PORT_CORE_VARIANT_NAME "Cortex-M7"
+#endif
#endif
/**
|