summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGregory Nutt <gnutt@nuttx.org>2014-02-18 12:07:17 -0600
committerGregory Nutt <gnutt@nuttx.org>2014-02-18 12:07:17 -0600
commitc21414db1d5c437f36fd3cd3b615a3256ad37265 (patch)
tree3b1dd2daad04de92cecdacb16463a4a6d53040ae
parent3ba2f25ad414d17f05938810c845835e3c8c4c21 (diff)
downloadnuttx-c21414db1d5c437f36fd3cd3b615a3256ad37265.tar.gz
nuttx-c21414db1d5c437f36fd3cd3b615a3256ad37265.tar.bz2
nuttx-c21414db1d5c437f36fd3cd3b615a3256ad37265.zip
More STM32F429 Discovery FPU-related changes from David Alessio
-rw-r--r--nuttx/ChangeLog5
-rw-r--r--nuttx/arch/arm/src/armv7-m/Toolchain.defs10
-rw-r--r--nuttx/arch/arm/src/armv7-m/up_fpu.S2
-rw-r--r--nuttx/arch/arm/src/stm32/Kconfig2
4 files changed, 15 insertions, 4 deletions
diff --git a/nuttx/ChangeLog b/nuttx/ChangeLog
index 4a8390ab8..59231ad1a 100644
--- a/nuttx/ChangeLog
+++ b/nuttx/ChangeLog
@@ -6588,4 +6588,7 @@
(2014-2-16).
* sched/task_terminate.c: Always returns an error because the
return value was not being set correctly. From Gosha (2014-2-18).
-
+ * stm32f429i-disco/ostest-fpu: OS test for FPU-enabled system from
+ David Alessio (2014-2-18).
+ * Other misc changes to support FPU on STM32F429 Discovery from
+ David Alession (2014-2-18)
diff --git a/nuttx/arch/arm/src/armv7-m/Toolchain.defs b/nuttx/arch/arm/src/armv7-m/Toolchain.defs
index ecdcb7f14..591923fe8 100644
--- a/nuttx/arch/arm/src/armv7-m/Toolchain.defs
+++ b/nuttx/arch/arm/src/armv7-m/Toolchain.defs
@@ -186,7 +186,15 @@ ifeq ($(CONFIG_ARMV7M_OABI_TOOLCHAIN),y)
else
CROSSDEV ?= arm-nuttx-eabi-
ARCROSSDEV ?= arm-nuttx-eabi-
- ARCHCPUFLAGS = -mcpu=cortex-m3 -mthumb -mfloat-abi=soft
+ ifeq ($(CONFIG_ARCH_CORTEXM4),y)
+ ifeq ($(CONFIG_ARCH_FPU),y)
+ ARCHCPUFLAGS = -mcpu=cortex-m4 -mthumb -march=armv7e-m -mfpu=fpv4-sp-d16 -mfloat-abi=hard
+ else
+ ARCHCPUFLAGS = -mcpu=cortex-m4 -mthumb -march=armv7e-m -mfloat-abi=soft
+ endif
+ else ifeq ($(CONFIG_ARCH_CORTEXM3),y)
+ ARCHCPUFLAGS = -mcpu=cortex-m3 -mthumb -mfloat-abi=soft
+ endif
endif
MAXOPTIMIZATION ?= -Os
endif
diff --git a/nuttx/arch/arm/src/armv7-m/up_fpu.S b/nuttx/arch/arm/src/armv7-m/up_fpu.S
index e7a4d237c..f43367fa4 100644
--- a/nuttx/arch/arm/src/armv7-m/up_fpu.S
+++ b/nuttx/arch/arm/src/armv7-m/up_fpu.S
@@ -35,7 +35,7 @@
/*
* When this file is assembled, it will require the following GCC options:
*
- * -mcpu=cortex-m3 -mfloat-abi=hard -mfpu=vfp -meabi=5
+ * -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=vfp -meabi=5 -mthumb
*/
/************************************************************************************
diff --git a/nuttx/arch/arm/src/stm32/Kconfig b/nuttx/arch/arm/src/stm32/Kconfig
index 7945671f8..16b02deb2 100644
--- a/nuttx/arch/arm/src/stm32/Kconfig
+++ b/nuttx/arch/arm/src/stm32/Kconfig
@@ -774,7 +774,7 @@ config STM32_OTGFS
config STM32_OTGHS
bool "OTG HS"
default n
- depends on STM32_STM32F20XX || STM32_STM32F40XX
+ depends on STM32_STM32F20XX || STM32_STM32F40XX || STM32_STM32F429
config STM32_OTGHS_FS_MODE
bool "Use OTG HS in FS mode"