summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGregory Nutt <gnutt@nuttx.org>2014-03-05 16:29:58 -0600
committerGregory Nutt <gnutt@nuttx.org>2014-03-05 16:29:58 -0600
commitade00d9f50648e66e78a562b0c6a83daa3ebe7a2 (patch)
tree88557a0add53d217566b83b3e5ea90b2dbbfcd1a
parent24a92b4f1dfb8c0f3fd978c2a952f1eff61919e2 (diff)
downloadnuttx-ade00d9f50648e66e78a562b0c6a83daa3ebe7a2.tar.gz
nuttx-ade00d9f50648e66e78a562b0c6a83daa3ebe7a2.tar.bz2
nuttx-ade00d9f50648e66e78a562b0c6a83daa3ebe7a2.zip
Use common naming for rest of the toolchains too
-rw-r--r--nuttx/ChangeLog3
-rw-r--r--nuttx/arch/arm/src/arm/Toolchain.defs9
-rw-r--r--nuttx/arch/arm/src/armv7-m/Toolchain.defs26
-rw-r--r--nuttx/configs/cloudctrl/README.txt3
-rw-r--r--nuttx/configs/cloudctrl/nsh/defconfig11
-rw-r--r--nuttx/configs/ekk-lm3s9b96/README.txt6
-rw-r--r--nuttx/configs/fire-stm32v2/README.txt3
-rw-r--r--nuttx/configs/fire-stm32v2/nsh/defconfig11
-rw-r--r--nuttx/configs/lpc4330-xplorer/README.txt64
-rw-r--r--nuttx/configs/mikroe-stm32f4/README.txt26
-rw-r--r--nuttx/configs/open1788/README.txt93
-rw-r--r--nuttx/configs/shenzhou/README.txt3
-rw-r--r--nuttx/configs/shenzhou/nsh/defconfig11
-rw-r--r--nuttx/configs/shenzhou/thttpd/defconfig13
-rw-r--r--nuttx/configs/spark/README.txt5
-rw-r--r--nuttx/configs/stm3210e-eval/README.txt6
-rw-r--r--nuttx/configs/stm3220g-eval/README.txt3
-rw-r--r--nuttx/configs/stm3240g-eval/README.txt38
-rw-r--r--nuttx/configs/stm3240g-eval/discover/defconfig11
-rw-r--r--nuttx/configs/stm3240g-eval/xmlrpc/defconfig11
-rw-r--r--nuttx/configs/stm32_tiny/README.txt3
-rw-r--r--nuttx/configs/stm32f100rc_generic/README.txt5
-rw-r--r--nuttx/configs/stm32f100rc_generic/nsh/defconfig11
-rw-r--r--nuttx/configs/stm32f3discovery/README.txt26
-rw-r--r--nuttx/configs/stm32f429i-disco/README.txt37
-rw-r--r--nuttx/configs/stm32f4discovery/README.txt26
-rw-r--r--nuttx/configs/stm32f4discovery/winbuild/defconfig11
-rw-r--r--nuttx/configs/stm32ldiscovery/README.txt3
-rw-r--r--nuttx/configs/stm32vldiscovery/README.txt5
-rw-r--r--nuttx/configs/stm32vldiscovery/nsh/defconfig11
30 files changed, 122 insertions, 372 deletions
diff --git a/nuttx/ChangeLog b/nuttx/ChangeLog
index e2d6c9e6a..9bd9bfb07 100644
--- a/nuttx/ChangeLog
+++ b/nuttx/ChangeLog
@@ -6893,3 +6893,6 @@
kconfig-frontends tools (2014-3-5)
* Many files: Use common naming for all buildroot toolchains
(2014-3-5).
+ * Many files: Use common naming for all CodeSourcery toolchains
+ (2014-3-5).
+ * Many files: Use common naming for rest of the toolcahins (2014-3-5).
diff --git a/nuttx/arch/arm/src/arm/Toolchain.defs b/nuttx/arch/arm/src/arm/Toolchain.defs
index d54631b15..82e38780f 100644
--- a/nuttx/arch/arm/src/arm/Toolchain.defs
+++ b/nuttx/arch/arm/src/arm/Toolchain.defs
@@ -49,27 +49,18 @@ ifeq ($(filter y, \
endif
ifeq ($(filter y, \
- $(CONFIG_DM320_CODESOURCERYL) \
- $(CONFIG_LPC31_CODESOURCERYL) \
- $(CONFIG_OLIMEX_LPC2378_CODESOURCERYL) \
$(CONFIG_ARM_TOOLCHAIN_CODESOURCERYL) \
),y)
CONFIG_ARM_TOOLCHAIN ?= CODESOURCERYL
endif
ifeq ($(filter y, \
- $(CONFIG_DM320_CODESOURCERYW) \
- $(CONFIG_LPC31_CODESOURCERYW) \
- $(CONFIG_OLIMEX_LPC2378_CODESOURCERYW) \
$(CONFIG_ARM_TOOLCHAIN_CODESOURCERYW) \
),y)
CONFIG_ARM_TOOLCHAIN ?= CODESOURCERYW
endif
ifeq ($(filter y, \
- $(CONFIG_DM320_DEVKITARM) \
- $(CONFIG_LPC31_DEVKITARM) \
- $(CONFIG_OLIMEX_LPC2378_DEVKITARM) \
$(CONFIG_ARM_TOOLCHAIN_DEVKITARM) \
),y)
CONFIG_ARM_TOOLCHAIN ?= DEVKITARM
diff --git a/nuttx/arch/arm/src/armv7-m/Toolchain.defs b/nuttx/arch/arm/src/armv7-m/Toolchain.defs
index 838951d5b..a698d6cac 100644
--- a/nuttx/arch/arm/src/armv7-m/Toolchain.defs
+++ b/nuttx/arch/arm/src/armv7-m/Toolchain.defs
@@ -43,10 +43,6 @@
#
ifeq ($(filter y, \
- $(CONFIG_LPC43_ATOLLIC_LITE) \
- $(CONFIG_STM32_ATOLLIC_LITE) \
- $(CONFIG_LPC43_ATOLLIC_PRO) \
- $(CONFIG_STM32_ATOLLIC_PRO) \
$(CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC) \
),y)
CONFIG_ARMV7M_TOOLCHAIN ?= ATOLLIC
@@ -59,58 +55,36 @@ ifeq ($(filter y, \
endif
ifeq ($(filter y, \
- $(CONFIG_LPC17_CODEREDL) \
$(CONFIG_ARMV7M_TOOLCHAIN_CODEREDL) \
),y)
CONFIG_ARMV7M_TOOLCHAIN ?= CODEREDL
endif
ifeq ($(filter y, \
- $(CONFIG_LPC17_CODEREDW) \
- $(CONFIG_LPC43_CODEREDW) \
$(CONFIG_ARMV7M_TOOLCHAIN_CODEREDW) \
),y)
CONFIG_ARMV7M_TOOLCHAIN ?= CODEREDW
endif
ifeq ($(filter y, \
- $(CONFIG_KINETIS_CODESOURCERYL) \
- $(CONFIG_LM_CODESOURCERYL) \
- $(CONFIG_LPC17_CODESOURCERYL) \
- $(CONFIG_LPC43_CODESOURCERYL) \
- $(CONFIG_SAM3U_CODESOURCERYL) \
- $(CONFIG_STM32_CODESOURCERYL) \
$(CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYL) \
),y)
CONFIG_ARMV7M_TOOLCHAIN ?= CODESOURCERYL
endif
ifeq ($(filter y, \
- $(CONFIG_KINETIS_CODESOURCERYW) \
- $(CONFIG_LM_CODESOURCERYW) \
- $(CONFIG_LPC17_CODESOURCERYW) \
- $(CONFIG_LPC43_CODESOURCERYW) \
- $(CONFIG_SAM3U_CODESOURCERYW) \
- $(CONFIG_STM32_CODESOURCERYW) \
$(CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW) \
),y)
CONFIG_ARMV7M_TOOLCHAIN ?= CODESOURCERYW
endif
ifeq ($(filter y, \
- $(CONFIG_KINETIS_DEVKITARM) \
- $(CONFIG_LM_DEVKITARM) \
- $(CONFIG_LPC17_DEVKITARM) \
- $(CONFIG_LPC43_DEVKITARM) \
- $(CONFIG_SAM3U_DEVKITARM) \
- $(CONFIG_STM32_DEVKITARM) \
$(CONFIG_ARMV7M_TOOLCHAIN_DEVKITARM) \
),y)
CONFIG_ARMV7M_TOOLCHAIN ?= DEVKITARM
endif
ifeq ($(filter y, \
- $(CONFIG_STM32_RAISONANCE) \
$(CONFIG_ARMV7M_TOOLCHAIN_RAISONANCE) \
),y)
CONFIG_ARMV7M_TOOLCHAIN ?= RAISONANCE
diff --git a/nuttx/configs/cloudctrl/README.txt b/nuttx/configs/cloudctrl/README.txt
index 1fbcca7f4..24d673726 100644
--- a/nuttx/configs/cloudctrl/README.txt
+++ b/nuttx/configs/cloudctrl/README.txt
@@ -197,8 +197,7 @@ GNU Toolchain Options
CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=y : CodeSourcery under Windows
CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYL=y : CodeSourcery under Linux
- CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC_LITE=y : The free, "Lite" version of Atollic toolchain under Windows
- CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC_PRO=y : The paid, "Pro" version of Atollic toolchain under Windows
+ CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC=y : The Atollic toolchain under Windows
CONFIG_ARMV7M_TOOLCHAIN_DEVKITARM=y : devkitARM under Windows
CONFIG_ARMV7M_TOOLCHAIN_RAISONANCE=y : Raisonance RIDE7 under Windows
CONFIG_ARMV7M_TOOLCHAIN_BUILDROOT=y : NuttX buildroot under Linux or Cygwin (default)
diff --git a/nuttx/configs/cloudctrl/nsh/defconfig b/nuttx/configs/cloudctrl/nsh/defconfig
index 68c29bc29..c47ccac1c 100644
--- a/nuttx/configs/cloudctrl/nsh/defconfig
+++ b/nuttx/configs/cloudctrl/nsh/defconfig
@@ -116,12 +116,11 @@ CONFIG_ARCH_CHIP_STM32F107VC=y
# CONFIG_ARCH_CHIP_STM32F407IG is not set
CONFIG_STM32_STM32F10XX=y
CONFIG_STM32_CONNECTIVITYLINE=y
-CONFIG_STM32_CODESOURCERYW=y
-# CONFIG_STM32_CODESOURCERYL is not set
-# CONFIG_STM32_ATOLLIC_LITE is not set
-# CONFIG_STM32_ATOLLIC_PRO is not set
-# CONFIG_STM32_DEVKITARM is not set
-# CONFIG_STM32_RAISONANCE is not set
+CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=y
+# CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYL is not set
+# CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC is not set
+# CONFIG_ARMV7M_TOOLCHAIN_DEVKITARM is not set
+# CONFIG_ARMV7M_TOOLCHAIN_RAISONANCE is not set
# CONFIG_ARMV7M_TOOLCHAIN_BUILDROOT is not set
# CONFIG_STM32_DFU is not set
diff --git a/nuttx/configs/ekk-lm3s9b96/README.txt b/nuttx/configs/ekk-lm3s9b96/README.txt
index 44802f60b..c7174d41f 100644
--- a/nuttx/configs/ekk-lm3s9b96/README.txt
+++ b/nuttx/configs/ekk-lm3s9b96/README.txt
@@ -102,9 +102,9 @@ GNU Toolchain Options
the CodeSourcery or devkitARM, you simply need to add one of the following
configuration options to your .config (or defconfig) file:
- CONFIG_LM_CODESOURCERYW=y : CodeSourcery under Windows
- CONFIG_LM_CODESOURCERYL=y : CodeSourcery under Linux
- CONFIG_LM_DEVKITARM=y : devkitARM under Windows
+ CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=y : CodeSourcery under Windows
+ CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYL=y : CodeSourcery under Linux
+ CONFIG_ARMV7M_TOOLCHAIN_DEVKITARM=y : devkitARM under Windows
CONFIG_ARMV7M_TOOLCHAIN_BUILDROOT=y : NuttX buildroot under Linux or Cygwin (default)
If you are not using CONFIG_ARMV7M_TOOLCHAIN_BUILDROOT, then you may also have to modify
diff --git a/nuttx/configs/fire-stm32v2/README.txt b/nuttx/configs/fire-stm32v2/README.txt
index 6b9373995..5ae0a65cb 100644
--- a/nuttx/configs/fire-stm32v2/README.txt
+++ b/nuttx/configs/fire-stm32v2/README.txt
@@ -191,8 +191,7 @@ GNU Toolchain Options
CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=y : CodeSourcery under Windows
CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYL=y : CodeSourcery under Linux
- CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC_LITE=y : The free, "Lite" version of Atollic toolchain under Windows
- CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC_PRO=y : The paid, "Pro" version of Atollic toolchain under Windows
+ CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC=y : The Atollic toolchain under Windows
CONFIG_ARMV7M_TOOLCHAIN_DEVKITARM=y : devkitARM under Windows
CONFIG_ARMV7M_TOOLCHAIN_RAISONANCE=y : Raisonance RIDE7 under Windows
CONFIG_ARMV7M_TOOLCHAIN_BUILDROOT=y : NuttX buildroot under Linux or Cygwin (default)
diff --git a/nuttx/configs/fire-stm32v2/nsh/defconfig b/nuttx/configs/fire-stm32v2/nsh/defconfig
index 6c41414c8..a34f6c866 100644
--- a/nuttx/configs/fire-stm32v2/nsh/defconfig
+++ b/nuttx/configs/fire-stm32v2/nsh/defconfig
@@ -103,12 +103,11 @@ CONFIG_ARCH_CHIP_STM32F103VET6=y
# CONFIG_ARCH_CHIP_STM32F407IG is not set
CONFIG_STM32_STM32F10XX=y
CONFIG_STM32_HIGHDENSITY=y
-CONFIG_STM32_CODESOURCERYW=y
-# CONFIG_STM32_CODESOURCERYL is not set
-# CONFIG_STM32_ATOLLIC_LITE is not set
-# CONFIG_STM32_ATOLLIC_PRO is not set
-# CONFIG_STM32_DEVKITARM is not set
-# CONFIG_STM32_RAISONANCE is not set
+CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=y
+# CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYL is not set
+# CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC is not set
+# CONFIG_ARMV7M_TOOLCHAIN_DEVKITARM is not set
+# CONFIG_ARMV7M_TOOLCHAIN_RAISONANCE is not set
# CONFIG_ARMV7M_TOOLCHAIN_BUILDROOT is not set
# CONFIG_STM32_DFU is not set
diff --git a/nuttx/configs/lpc4330-xplorer/README.txt b/nuttx/configs/lpc4330-xplorer/README.txt
index f6d8d00ef..982c2b6e5 100644
--- a/nuttx/configs/lpc4330-xplorer/README.txt
+++ b/nuttx/configs/lpc4330-xplorer/README.txt
@@ -148,12 +148,11 @@ GNU Toolchain Options
the CodeSourcery or devkitARM toolchain, you simply need add one of the
following configuration options to your .config (or defconfig) file:
- CONFIG_LPC43_CODEREDW=y : Code Red "RedSuite" under Windows
- CONFIG_LPC43_CODESOURCERYW=y : CodeSourcery under Windows
- CONFIG_LPC43_CODESOURCERYL=y : CodeSourcery under Linux
- CONFIG_LPC43_ATOLLIC_LITE=y : The free, "Lite" version of Atollic toolchain under Windows
- CONFIG_LPC43_ATOLLIC_PRO=y : The paid, "Pro" version of Atollic toolchain under Windows
- CONFIG_LPC43_DEVKITARM=y : devkitARM under Windows
+ CONFIG_ARMV7M_TOOLCHAIN_CODEREDW=y : Code Red "RedSuite" under Windows
+ CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=y : CodeSourcery under Windows
+ CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYL=y : CodeSourcery under Linux
+ CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC=y : The Atollic toolchain under Windows
+ CONFIG_ARMV7M_TOOLCHAIN_DEVKITARM=y : devkitARM under Windows
CONFIG_ARMV7M_TOOLCHAIN_BUILDROOT=y : NuttX buildroot under Linux or Cygwin (default)
If you are not using CONFIG_ARMV7M_TOOLCHAIN_BUILDROOT, then you may also have to modify
@@ -425,15 +424,15 @@ Code Red IDE/Tools
By default, the configurations here assume that you are executing directly
from SRAM.
- CONFIG_LPC43_BOOT_SRAM=y : Executing in SRAM
- CONFIG_LPC43_CODEREDW=y : Code Red under Windows
+ CONFIG_LPC43_BOOT_SRAM=y : Executing in SRAM
+ CONFIG_ARMV7M_TOOLCHAIN_CODEREDW=y : Code Red under Windows
To execute from SPIFI, you would need to set:
- CONFIG_LPC43_BOOT_SPIFI=y : Executing from SPIFI
- CONFIG_RAM_SIZE=(128*1024) : SRAM Bank0 size
- CONFIG_RAM_START=0x10000000 : SRAM Bank0 base address
- CONFIG_SPIFI_OFFSET=(512*1024) : SPIFI file system offset
+ CONFIG_LPC43_BOOT_SPIFI=y : Executing from SPIFI
+ CONFIG_RAM_SIZE=(128*1024) : SRAM Bank0 size
+ CONFIG_RAM_START=0x10000000 : SRAM Bank0 base address
+ CONFIG_SPIFI_OFFSET=(512*1024) : SPIFI file system offset
To boot the LPC4330-Xplorer from SPIFI the DIP switches should be 1-OFF,
2-ON, 3-ON, 4-ON (LOW LOW LOW HIGH in Table 19, MSB to LSB).
@@ -616,29 +615,14 @@ must be defined in *all* LPC43xx configuration files.
CFLAGS
------
-Only the Atollic toolchain has built-in support for the Cortex-M4 FPU. You will see
+Only the recent toolchains have built-in support for the Cortex-M4 FPU. You will see
the following lines in each Make.defs file:
- ifeq ($(CONFIG_LPC43_ATOLLIC_LITE),y)
- # Atollic toolchain under Windows
- ...
ifeq ($(CONFIG_ARCH_FPU),y)
ARCHCPUFLAGS = -mcpu=cortex-m4 -mthumb -march=armv7e-m -mfpu=fpv4-sp-d16 -mfloat-abi=hard
else
ARCHCPUFLAGS = -mcpu=cortex-m3 -mthumb -mfloat-abi=soft
endif
- endif
-
-If you are using a toolchain other than the Atollic toolchain, then to use the FPU
-you will also have to modify the CFLAGS to enable compiler support for the ARMv7-M
-FPU. As of this writing, there are not many GCC toolchains that will support the
-ARMv7-M FPU.
-
-As a minimum you will need to add CFLAG options to (1) enable hardware floating point
-code generation, and to (2) select the FPU implementation. You might try the same
-options as used with the Atollic toolchain in the Make.defs file:
-
- ARCHCPUFLAGS = -mcpu=cortex-m4 -mthumb -march=armv7e-m -mfpu=fpv4-sp-d16 -mfloat-abi=hard
Configuration Changes
---------------------
@@ -646,22 +630,20 @@ Configuration Changes
Below are all of the configuration changes that I had to make to configs/stm3240g-eval/nsh2
in order to successfully build NuttX using the Atollic toolchain WITH FPU support:
- -CONFIG_ARCH_FPU=n : Enable FPU support
+ -CONFIG_ARCH_FPU=n : Enable FPU support
+CONFIG_ARCH_FPU=y
- -CONFIG_LPC43_CODESOURCERYW=y : Disable the CodeSourcery toolchain
- +CONFIG_LPC43_CODESOURCERYW=n
+ -CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=y : Disable the CodeSourcery toolchain
+ +CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=n
- -CONFIG_LPC43_ATOLLIC_LITE=n : Enable *one* the Atollic toolchains
- CONFIG_LPC43_ATOLLIC_PRO=n
- -CONFIG_LPC43_ATOLLIC_LITE=y : The "Lite" version, OR
- CONFIG_LPC43_ATOLLIC_PRO=y : The "Pro" version (not both)
+ -CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC=n : Enable the Atollic toolchains
+ +CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC=y :
- -CONFIG_INTELHEX_BINARY=y : Suppress generation FLASH download formats
- +CONFIG_INTELHEX_BINARY=n : (Only necessary with the "Lite" version)
+ -CONFIG_INTELHEX_BINARY=y : Suppress generation FLASH download formats
+ +CONFIG_INTELHEX_BINARY=n : (Only necessary with the "Lite" version)
- -CONFIG_HAVE_CXX=y : Suppress generation of C++ code
- +CONFIG_HAVE_CXX=n : (Only necessary with the "Lite" version)
+ -CONFIG_HAVE_CXX=y : Suppress generation of C++ code
+ +CONFIG_HAVE_CXX=n : (Only necessary with the "Lite" version)
See the section above on Toolchains, NOTE 2, for explanations for some of
the configuration settings. Some of the usual settings are just not supported
@@ -921,8 +903,8 @@ Where <subdir> is one of the following:
2. By default, this project assumes that you are executing directly from
SRAM.
- CONFIG_LPC43_BOOT_SRAM=y : Executing in SRAM
- CONFIG_LPC43_CODEREDW=y : Code Red under Windows
+ CONFIG_LPC43_BOOT_SRAM=y : Executing in SRAM
+ CONFIG_ARMV7M_TOOLCHAIN_CODEREDW=y : Code Red under Windows
3. To execute from SPIFI, you would need to set:
diff --git a/nuttx/configs/mikroe-stm32f4/README.txt b/nuttx/configs/mikroe-stm32f4/README.txt
index 1a0d29a9b..01072094a 100644
--- a/nuttx/configs/mikroe-stm32f4/README.txt
+++ b/nuttx/configs/mikroe-stm32f4/README.txt
@@ -64,8 +64,7 @@ GNU Toolchain Options
CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=y : CodeSourcery under Windows
CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYL=y : CodeSourcery under Linux
- CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC_LITE=y : The free, "Lite" version of Atollic toolchain under Windows
- CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC_PRO=y : The paid, "Pro" version of Atollic toolchain under Windows
+ CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC=y : The Atollic toolchain under Windows
CONFIG_ARMV7M_TOOLCHAIN_DEVKITARM=y : devkitARM under Windows
CONFIG_ARMV7M_TOOLCHAIN_RAISONANCE=y : Raisonance RIDE7 under Windows
CONFIG_ARMV7M_TOOLCHAIN_BUILDROOT=y : NuttX buildroot under Linux or Cygwin (default)
@@ -423,29 +422,14 @@ modifying the NuttX configuration
CFLAGS
------
-Only the Atollic toolchain has built-in support for the Cortex-M4 FPU. You will see
+Only recent GCC toolchains have built-in support for the Cortex-M4 FPU. You will see
the following lines in each Make.defs file:
- ifeq ($(CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC_LITE),y)
- # Atollic toolchain under Windows
- ...
ifeq ($(CONFIG_ARCH_FPU),y)
ARCHCPUFLAGS = -mcpu=cortex-m4 -mthumb -march=armv7e-m -mfpu=fpv4-sp-d16 -mfloat-abi=hard
else
ARCHCPUFLAGS = -mcpu=cortex-m3 -mthumb -mfloat-abi=soft
endif
- endif
-
-If you are using a toolchain other than the Atollic toolchain, then to use the FPU
-you will also have to modify the CFLAGS to enable compiler support for the ARMv7-M
-FPU. As of this writing, there are not many GCC toolchains that will support the
-ARMv7-M FPU.
-
-As a minimum you will need to add CFLAG options to (1) enable hardware floating point
-code generation, and to (2) select the FPU implementation. You might try the same
-options as used with the Atollic toolchain in the Make.defs file:
-
- ARCHCPUFLAGS = -mcpu=cortex-m4 -mthumb -march=armv7e-m -mfpu=fpv4-sp-d16 -mfloat-abi=hard
Configuration Changes
---------------------
@@ -459,10 +443,8 @@ in order to successfully build NuttX using the Atollic toolchain WITH FPU suppor
-CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=y : Disable the CodeSourcery toolchain
+CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=n
- -CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC_LITE=n : Enable *one* the Atollic toolchains
- CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC_PRO=n
- -CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC_LITE=y : The "Lite" version
- CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC_PRO=n : The "Pro" version
+ -CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC=n : Enable the Atollic toolchain
+ +CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC=y :
-CONFIG_INTELHEX_BINARY=y : Suppress generation FLASH download formats
+CONFIG_INTELHEX_BINARY=n : (Only necessary with the "Lite" version)
diff --git a/nuttx/configs/open1788/README.txt b/nuttx/configs/open1788/README.txt
index ccb7e5633..a97e49714 100644
--- a/nuttx/configs/open1788/README.txt
+++ b/nuttx/configs/open1788/README.txt
@@ -10,7 +10,6 @@ CONTENTS
o LEDs
o Buttons
- o FPU
o Serial Console
o Using OpenOCD with the Olimex ARM-USB-OCD
o Loading Code with the ISP Board
@@ -63,98 +62,6 @@ Buttons
These can be accessed using the definitions and interfaces defined in the
board.h header file.
-FPU
-===
-
- FPU Configuration Options
- -------------------------
-
- There are two version of the FPU support built into the LPC17xx port.
-
- 1. Lazy Floating Point Register Save.
-
- This is an untested implementation that saves and restores FPU registers
- only on context switches. This means: (1) floating point registers are
- not stored on each context switch and, hence, possibly better interrupt
- performance. But, (2) since floating point registers are not saved,
- you cannot use floating point operations within interrupt handlers.
-
- This logic can be enabled by simply adding the following to your .config
- file:
-
- CONFIG_ARCH_FPU=y
-
- 2. Non-Lazy Floating Point Register Save
-
- Mike Smith has contributed an extensive re-write of the ARMv7-M exception
- handling logic. This includes verified support for the FPU. These changes
- have not yet been incorporated into the mainline and are still considered
- experimental. These FPU logic can be enabled with:
-
- CONFIG_ARCH_FPU=y
- CONFIG_ARMV7M_CMNVECTOR=y
-
- You will probably also changes to the ld.script in if this option is selected.
- This should work:
-
- -ENTRY(_stext)
- +ENTRY(__start) /* Treat __start as the anchor for dead code stripping */
- +EXTERN(_vectors) /* Force the vectors to be included in the output */
-
- CFLAGS
- ------
-
- Only the Atollic toolchain has built-in support for the Cortex-M4 FPU. You will see
- the following lines in each Make.defs file:
-
- ifeq ($(CONFIG_STM32_ATOLLIC_LITE),y)
- # Atollic toolchain under Windows
- ...
- ifeq ($(CONFIG_ARCH_FPU),y)
- ARCHCPUFLAGS = -mcpu=cortex-m4 -mthumb -march=armv7e-m -mfpu=fpv4-sp-d16 -mfloat-abi=hard
- else
- ARCHCPUFLAGS = -mcpu=cortex-m3 -mthumb -mfloat-abi=soft
- endif
- endif
-
- If you are using a toolchain other than the Atollic toolchain, then to use the FPU
- you will also have to modify the CFLAGS to enable compiler support for the ARMv7-M
- FPU. As of this writing, there are not many GCC toolchains that will support the
- ARMv7-M FPU.
-
- As a minimum you will need to add CFLAG options to (1) enable hardware floating point
- code generation, and to (2) select the FPU implementation. You might try the same
- options as used with the Atollic toolchain in the Make.defs file:
-
- ARCHCPUFLAGS = -mcpu=cortex-m4 -mthumb -march=armv7e-m -mfpu=fpv4-sp-d16 -mfloat-abi=hard
-
- Configuration Changes
- ---------------------
-
- Below are all of the configuration changes that I had to make to configs/stm3240g-eval/nsh2
- in order to successfully build NuttX using the Atollic toolchain WITH FPU support:
-
- -CONFIG_ARCH_FPU=n : Enable FPU support
- +CONFIG_ARCH_FPU=y
-
- -CONFIG_STM32_CODESOURCERYW=y : Disable the CodeSourcery toolchain
- +CONFIG_STM32_CODESOURCERYW=n
-
- -CONFIG_STM32_ATOLLIC_LITE=n : Enable *one* the Atollic toolchains
- CONFIG_STM32_ATOLLIC_PRO=n
- -CONFIG_STM32_ATOLLIC_LITE=y : The "Lite" version
- CONFIG_STM32_ATOLLIC_PRO=n : The "Pro" version
-
- -CONFIG_INTELHEX_BINARY=y : Suppress generation FLASH download formats
- +CONFIG_INTELHEX_BINARY=n : (Only necessary with the "Lite" version)
-
- -CONFIG_HAVE_CXX=y : Suppress generation of C++ code
- +CONFIG_HAVE_CXX=n : (Only necessary with the "Lite" version)
-
- See the section above on Toolchains, NOTE 2, for explanations for some of
- the configuration settings. Some of the usual settings are just not supported
- by the "Lite" version of the Atollic toolchain.
-
Serial Console
==============
diff --git a/nuttx/configs/shenzhou/README.txt b/nuttx/configs/shenzhou/README.txt
index 809630549..bd25099e2 100644
--- a/nuttx/configs/shenzhou/README.txt
+++ b/nuttx/configs/shenzhou/README.txt
@@ -214,8 +214,7 @@ GNU Toolchain Options
CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=y : CodeSourcery under Windows
CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYL=y : CodeSourcery under Linux
- CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC_LITE=y : The free, "Lite" version of Atollic toolchain under Windows
- CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC_PRO=y : The paid, "Pro" version of Atollic toolchain under Windows
+ CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC=y : The Atollic toolchain under Windows
CONFIG_ARMV7M_TOOLCHAIN_DEVKITARM=y : devkitARM under Windows
CONFIG_ARMV7M_TOOLCHAIN_RAISONANCE=y : Raisonance RIDE7 under Windows
CONFIG_ARMV7M_TOOLCHAIN_BUILDROOT=y : NuttX buildroot under Linux or Cygwin (default)
diff --git a/nuttx/configs/shenzhou/nsh/defconfig b/nuttx/configs/shenzhou/nsh/defconfig
index 48f6bd1a4..5ef66ea47 100644
--- a/nuttx/configs/shenzhou/nsh/defconfig
+++ b/nuttx/configs/shenzhou/nsh/defconfig
@@ -116,12 +116,11 @@ CONFIG_ARCH_CHIP_STM32F107VC=y
# CONFIG_ARCH_CHIP_STM32F407IG is not set
CONFIG_STM32_STM32F10XX=y
CONFIG_STM32_CONNECTIVITYLINE=y
-CONFIG_STM32_CODESOURCERYW=y
-# CONFIG_STM32_CODESOURCERYL is not set
-# CONFIG_STM32_ATOLLIC_LITE is not set
-# CONFIG_STM32_ATOLLIC_PRO is not set
-# CONFIG_STM32_DEVKITARM is not set
-# CONFIG_STM32_RAISONANCE is not set
+CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=y
+# CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYL is not set
+# CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC is not set
+# CONFIG_ARMV7M_TOOLCHAIN_DEVKITARM is not set
+# CONFIG_ARMV7M_TOOLCHAIN_RAISONANCE is not set
# CONFIG_ARMV7M_TOOLCHAIN_BUILDROOT is not set
# CONFIG_STM32_DFU is not set
diff --git a/nuttx/configs/shenzhou/thttpd/defconfig b/nuttx/configs/shenzhou/thttpd/defconfig
index 4bc563157..ab9e43241 100644
--- a/nuttx/configs/shenzhou/thttpd/defconfig
+++ b/nuttx/configs/shenzhou/thttpd/defconfig
@@ -103,12 +103,11 @@ CONFIG_ARCH_CHIP_STM32F107VC=y
# CONFIG_ARCH_CHIP_STM32F407IG is not set
CONFIG_STM32_STM32F10XX=y
CONFIG_STM32_CONNECTIVITYLINE=y
-CONFIG_STM32_CODESOURCERYW=n
-# CONFIG_STM32_CODESOURCERYL is not set
-# CONFIG_STM32_ATOLLIC_LITE is not set
-# CONFIG_STM32_ATOLLIC_PRO is not set
-# CONFIG_STM32_DEVKITARM is not set
-# CONFIG_STM32_RAISONANCE is not set
+CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=n
+# CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYL is not set
+# CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC is not set
+# CONFIG_ARMV7M_TOOLCHAIN_DEVKITARM is not set
+# CONFIG_ARMV7M_TOOLCHAIN_RAISONANCE is not set
# CONFIG_ARMV7M_TOOLCHAIN_BUILDROOT is not set
# CONFIG_STM32_DFU is not set
@@ -965,7 +964,7 @@ CONFIG_THTTPD_CHARSET="iso-8859-1"
CONFIG_NETUTILS_DHCPC=n
CONFIG_THTTPD_PORT=80
CONFIG_THTTPD=y
-CONFIG_STM32_CODESOURCERYL=n
+CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYL=n
CONFIG_NSH_DHCPC=n
CONFIG_THTTPD_IPADDR=0xc0a80032
CONFIG_THTTPD_PATH="/mnt/www"
diff --git a/nuttx/configs/spark/README.txt b/nuttx/configs/spark/README.txt
index 1937333eb..1f82ce96c 100644
--- a/nuttx/configs/spark/README.txt
+++ b/nuttx/configs/spark/README.txt
@@ -68,10 +68,9 @@ GNU Toolchain Options
CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=n : CodeSourcery under Windows
CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYL=y : CodeSourcery under Linux
- CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC_LITE=n : The free, "Lite" version of Atollic toolchain under Windows
- CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC_PRO=n : The paid, "Pro" version of Atollic toolchain under Windows
+ CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC=y : The Atollic toolchain under Windows
CONFIG_ARMV7M_TOOLCHAIN_DEVKITARM=n : devkitARM under Windows
- CONFIG_ARMV7M_TOOLCHAIN_RAISONANCEny : Raisonance RIDE7 under Windows
+ CONFIG_ARMV7M_TOOLCHAIN_RAISONANCE=y : Raisonance RIDE7 under Windows
CONFIG_ARMV7M_TOOLCHAIN_BUILDROOT=n : NuttX buildroot under Linux or Cygwin (default)
If you change the default toolchain, then you may also have to modify the PATH in
diff --git a/nuttx/configs/stm3210e-eval/README.txt b/nuttx/configs/stm3210e-eval/README.txt
index 0394537c5..58b9a73cd 100644
--- a/nuttx/configs/stm3210e-eval/README.txt
+++ b/nuttx/configs/stm3210e-eval/README.txt
@@ -968,9 +968,9 @@ Where <subdir> is one of the following:
2. Default configuration is Cygwin under windows using the CodeSourcery
toolchain:
- CONFIG_HOST_WINDOWS=y : Windows
- CONFIG_WINDOWS_CYGWIN=y : Cygwin
- CONFIG_STM32_CODESOURCERYW=y : CodeSourcery under Windows
+ CONFIG_HOST_WINDOWS=y : Windows
+ CONFIG_WINDOWS_CYGWIN=y : Cygwin
+ CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=y : CodeSourcery under Windows
3. CONFIG_ARCH_CUSTOM_PMINIT and CONFIG_ARCH_IDLE_CUSTOM are necessary
parts of the PM configuration:
diff --git a/nuttx/configs/stm3220g-eval/README.txt b/nuttx/configs/stm3220g-eval/README.txt
index 0aff45d10..67a982ba6 100644
--- a/nuttx/configs/stm3220g-eval/README.txt
+++ b/nuttx/configs/stm3220g-eval/README.txt
@@ -55,8 +55,7 @@ GNU Toolchain Options
CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=y : CodeSourcery under Windows
CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYL=y : CodeSourcery under Linux
- CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC_LITE=y : The free, "Lite" version of Atollic toolchain under Windows
- CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC_PRO=y : The paid, "Pro" version of Atollic toolchain under Windows
+ CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC=y : The Atollic toolchain under Windows
CONFIG_ARMV7M_TOOLCHAIN_DEVKITARM=y : devkitARM under Windows
CONFIG_ARMV7M_TOOLCHAIN_RAISONANCE=y : Raisonance RIDE7 under Windows
CONFIG_ARMV7M_TOOLCHAIN_BUILDROOT=y : NuttX buildroot under Linux or Cygwin (default)
diff --git a/nuttx/configs/stm3240g-eval/README.txt b/nuttx/configs/stm3240g-eval/README.txt
index 9d9c1f5d1..2af6ef5ac 100644
--- a/nuttx/configs/stm3240g-eval/README.txt
+++ b/nuttx/configs/stm3240g-eval/README.txt
@@ -56,8 +56,7 @@ GNU Toolchain Options
CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=y : CodeSourcery under Windows
CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYL=y : CodeSourcery under Linux
- CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC_LITE=y : The free, "Lite" version of Atollic toolchain under Windows
- CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC_PRO=y : The paid, "Pro" version of Atollic toolchain under Windows
+ CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC=y : The Atollic toolchain under Windows
CONFIG_ARMV7M_TOOLCHAIN_DEVKITARM=y : devkitARM under Windows
CONFIG_ARMV7M_TOOLCHAIN_RAISONANCE=y : Raisonance RIDE7 under Windows
CONFIG_ARMV7M_TOOLCHAIN_BUILDROOT=y : NuttX buildroot under Linux or Cygwin (default)
@@ -433,29 +432,14 @@ There are two version of the FPU support built into the STM32 port.
CFLAGS
------
-Only the Atollic toolchain has built-in support for the Cortex-M4 FPU. You will see
+Only recent GCC toolchains have built-in support for the Cortex-M4 FPU. You will see
the following lines in each Make.defs file:
- ifeq ($(CONFIG_STM32_ATOLLIC_LITE),y)
- # Atollic toolchain under Windows
- ...
ifeq ($(CONFIG_ARCH_FPU),y)
ARCHCPUFLAGS = -mcpu=cortex-m4 -mthumb -march=armv7e-m -mfpu=fpv4-sp-d16 -mfloat-abi=hard
else
ARCHCPUFLAGS = -mcpu=cortex-m3 -mthumb -mfloat-abi=soft
endif
- endif
-
-If you are using a toolchain other than the Atollic toolchain, then to use the FPU
-you will also have to modify the CFLAGS to enable compiler support for the ARMv7-M
-FPU. As of this writing, there are not many GCC toolchains that will support the
-ARMv7-M FPU.
-
-As a minimum you will need to add CFLAG options to (1) enable hardware floating point
-code generation, and to (2) select the FPU implementation. You might try the same
-options as used with the Atollic toolchain in the Make.defs file:
-
- ARCHCPUFLAGS = -mcpu=cortex-m4 -mthumb -march=armv7e-m -mfpu=fpv4-sp-d16 -mfloat-abi=hard
Configuration Changes
---------------------
@@ -463,22 +447,20 @@ Configuration Changes
Below are all of the configuration changes that I had to make to configs/stm3240g-eval/nsh2
in order to successfully build NuttX using the Atollic toolchain WITH FPU support:
- -CONFIG_ARCH_FPU=n : Enable FPU support
+ -CONFIG_ARCH_FPU=n : Enable FPU support
+CONFIG_ARCH_FPU=y
- -CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=y : Disable the CodeSourcery toolchain
+ -CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=y : Disable the CodeSourcery toolchain
+CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=n
- -CONFIG_STM32_ATOLLIC_LITE=n : Enable *one* the Atollic toolchains
- CONFIG_STM32_ATOLLIC_PRO=n
- -CONFIG_STM32_ATOLLIC_LITE=y : The "Lite" version, OR
- CONFIG_STM32_ATOLLIC_PRO=y : The "Pro" version (not both)
+ -CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC=n : Enable the Atollic toolchain
+ +CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC=y :
- -CONFIG_INTELHEX_BINARY=y : Suppress generation FLASH download formats
- +CONFIG_INTELHEX_BINARY=n : (Only necessary with the "Lite" version)
+ -CONFIG_INTELHEX_BINARY=y : Suppress generation FLASH download formats
+ +CONFIG_INTELHEX_BINARY=n : (Only necessary with the "Lite" version)
- -CONFIG_HAVE_CXX=y : Suppress generation of C++ code
- +CONFIG_HAVE_CXX=n : (Only necessary with the "Lite" version)
+ -CONFIG_HAVE_CXX=y : Suppress generation of C++ code
+ +CONFIG_HAVE_CXX=n : (Only necessary with the "Lite" version)
See the section above on Toolchains, NOTE 2, for explanations for some of
the configuration settings. Some of the usual settings are just not supported
diff --git a/nuttx/configs/stm3240g-eval/discover/defconfig b/nuttx/configs/stm3240g-eval/discover/defconfig
index cda6bd499..2cbfc45f9 100644
--- a/nuttx/configs/stm3240g-eval/discover/defconfig
+++ b/nuttx/configs/stm3240g-eval/discover/defconfig
@@ -121,12 +121,11 @@ CONFIG_BOARD_LOOPSPERMSEC=16717
# CONFIG_ARCH_CHIP_STM32F407IE is not set
CONFIG_ARCH_CHIP_STM32F407IG=y
CONFIG_STM32_STM32F40XX=y
-# CONFIG_STM32_CODESOURCERYW is not set
-CONFIG_STM32_CODESOURCERYL=y
-# CONFIG_STM32_ATOLLIC_LITE is not set
-# CONFIG_STM32_ATOLLIC_PRO is not set
-# CONFIG_STM32_DEVKITARM is not set
-# CONFIG_STM32_RAISONANCE is not set
+# CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW is not set
+CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYL=y
+# CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC is not set
+# CONFIG_ARMV7M_TOOLCHAIN_DEVKITARM is not set
+# CONFIG_ARMV7M_TOOLCHAIN_RAISONANCE is not set
# CONFIG_ARMV7M_TOOLCHAIN_BUILDROOT is not set
# CONFIG_STM32_DFU is not set
diff --git a/nuttx/configs/stm3240g-eval/xmlrpc/defconfig b/nuttx/configs/stm3240g-eval/xmlrpc/defconfig
index 388b69884..be5d22711 100644
--- a/nuttx/configs/stm3240g-eval/xmlrpc/defconfig
+++ b/nuttx/configs/stm3240g-eval/xmlrpc/defconfig
@@ -121,12 +121,11 @@ CONFIG_BOARD_LOOPSPERMSEC=16717
# CONFIG_ARCH_CHIP_STM32F407IE is not set
CONFIG_ARCH_CHIP_STM32F407IG=y
CONFIG_STM32_STM32F40XX=y
-# CONFIG_STM32_CODESOURCERYW is not set
-CONFIG_STM32_CODESOURCERYL=y
-# CONFIG_STM32_ATOLLIC_LITE is not set
-# CONFIG_STM32_ATOLLIC_PRO is not set
-# CONFIG_STM32_DEVKITARM is not set
-# CONFIG_STM32_RAISONANCE is not set
+# CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW is not set
+CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYL=y
+# CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC is not set
+# CONFIG_ARMV7M_TOOLCHAIN_DEVKITARM is not set
+# CONFIG_ARMV7M_TOOLCHAIN_RAISONANCE is not set
# CONFIG_ARMV7M_TOOLCHAIN_BUILDROOT is not set
# CONFIG_STM32_DFU is not set
diff --git a/nuttx/configs/stm32_tiny/README.txt b/nuttx/configs/stm32_tiny/README.txt
index 1210ccc72..b4847b277 100644
--- a/nuttx/configs/stm32_tiny/README.txt
+++ b/nuttx/configs/stm32_tiny/README.txt
@@ -52,8 +52,7 @@ GNU Toolchain Options
CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=y : CodeSourcery under Windows
CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYL=y : CodeSourcery under Linux
- CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC_LITE=y : The free, "Lite" version of Atollic toolchain under Windows
- CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC_PRO=y : The paid, "Pro" version of Atollic toolchain under Windows
+ CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC=y : The Atollic toolchain under Windows
CONFIG_ARMV7M_TOOLCHAIN_DEVKITARM=y : devkitARM under Windows
CONFIG_ARMV7M_TOOLCHAIN_RAISONANCE=y : Raisonance RIDE7 under Windows
CONFIG_ARMV7M_TOOLCHAIN_BUILDROOT=y : NuttX buildroot under Linux or Cygwin (default)
diff --git a/nuttx/configs/stm32f100rc_generic/README.txt b/nuttx/configs/stm32f100rc_generic/README.txt
index 481a92147..d7c8e64e5 100644
--- a/nuttx/configs/stm32f100rc_generic/README.txt
+++ b/nuttx/configs/stm32f100rc_generic/README.txt
@@ -50,8 +50,7 @@ GNU Toolchain Options
CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=y : CodeSourcery under Windows
CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYL=y : CodeSourcery under Linux
- CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC_LITE=y : The free, "Lite" version of Atollic toolchain under Windows
- CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC_PRO=y : The paid, "Pro" version of Atollic toolchain under Windows
+ CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC=y : The Atollic toolchain under Windows
CONFIG_ARMV7M_TOOLCHAIN_DEVKITARM=y : devkitARM under Windows
CONFIG_ARMV7M_TOOLCHAIN_RAISONANCE=y : Raisonance RIDE7 under Windows
CONFIG_ARMV7M_TOOLCHAIN_BUILDROOT=y : NuttX buildroot under Linux or Cygwin (default)
@@ -471,4 +470,4 @@ Where <subdir> is one of the following:
Default toolchain:
- CONFIG_STM32_CODESOURCERYL=y : CodeSourcery under Linux / Mac OS X
+ CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYL=y : CodeSourcery under Linux / Mac OS X
diff --git a/nuttx/configs/stm32f100rc_generic/nsh/defconfig b/nuttx/configs/stm32f100rc_generic/nsh/defconfig
index be0c7c3a5..3b745e0ed 100644
--- a/nuttx/configs/stm32f100rc_generic/nsh/defconfig
+++ b/nuttx/configs/stm32f100rc_generic/nsh/defconfig
@@ -117,12 +117,11 @@ CONFIG_ARCH_CHIP_STM32F100RC=y
CONFIG_STM32_STM32F10XX=y
CONFIG_STM32_VALUELINE=y
CONFIG_STM32_HIGHDENSITY=y
-# CONFIG_STM32_CODESOURCERYW is not set
-CONFIG_STM32_CODESOURCERYL=y
-# CONFIG_STM32_ATOLLIC_LITE is not set
-# CONFIG_STM32_ATOLLIC_PRO is not set
-# CONFIG_STM32_DEVKITARM is not set
-# CONFIG_STM32_RAISONANCE is not set
+# CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW is not set
+CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYL=y
+# CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC is not set
+# CONFIG_ARMV7M_TOOLCHAIN_DEVKITARM is not set
+# CONFIG_ARMV7M_TOOLCHAIN_RAISONANCE is not set
# CONFIG_ARMV7M_TOOLCHAIN_BUILDROOT is not set
# CONFIG_STM32_DFU is not set
diff --git a/nuttx/configs/stm32f3discovery/README.txt b/nuttx/configs/stm32f3discovery/README.txt
index 11a6da3e4..d557c2fdf 100644
--- a/nuttx/configs/stm32f3discovery/README.txt
+++ b/nuttx/configs/stm32f3discovery/README.txt
@@ -48,8 +48,7 @@ GNU Toolchain Options
CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=y : CodeSourcery under Windows
CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYL=y : CodeSourcery under Linux
- CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC_LITE=y : The free, "Lite" version of Atollic toolchain under Windows
- CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC_PRO=y : The paid, "Pro" version of Atollic toolchain under Windows
+ CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC=y : The Atollic toolchain under Windows
CONFIG_ARMV7M_TOOLCHAIN_DEVKITARM=y : devkitARM under Windows
CONFIG_ARMV7M_TOOLCHAIN_RAISONANCE=y : Raisonance RIDE7 under Windows
CONFIG_ARMV7M_TOOLCHAIN_BUILDROOT=y : NuttX buildroot under Linux or Cygwin (default)
@@ -366,29 +365,14 @@ There are two version of the FPU support built into the STM32 port.
CFLAGS
------
-Only the Atollic toolchain has built-in support for the Cortex-M4 FPU. You will see
+Only recent GCC toolchains have built-in support for the Cortex-M4 FPU. You will see
the following lines in each Make.defs file:
- ifeq ($(CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC_LITE),y)
- # Atollic toolchain under Windows
- ...
ifeq ($(CONFIG_ARCH_FPU),y)
ARCHCPUFLAGS = -mcpu=cortex-m4 -mthumb -march=armv7e-m -mfpu=fpv4-sp-d16 -mfloat-abi=hard
else
ARCHCPUFLAGS = -mcpu=cortex-m3 -mthumb -mfloat-abi=soft
endif
- endif
-
-If you are using a toolchain other than the Atollic toolchain, then to use the FPU
-you will also have to modify the CFLAGS to enable compiler support for the ARMv7-M
-FPU. As of this writing, there are not many GCC toolchains that will support the
-ARMv7-M FPU.
-
-As a minimum you will need to add CFLAG options to (1) enable hardware floating point
-code generation, and to (2) select the FPU implementation. You might try the same
-options as used with the Atollic toolchain in the Make.defs file:
-
- ARCHCPUFLAGS = -mcpu=cortex-m4 -mthumb -march=armv7e-m -mfpu=fpv4-sp-d16 -mfloat-abi=hard
Configuration Changes
---------------------
@@ -402,10 +386,8 @@ in order to successfully build NuttX using the Atollic toolchain WITH FPU suppor
-CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=y : Disable the CodeSourcery toolchain
+CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=n
- -CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC_LITE=n : Enable *one* the Atollic toolchains
- CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC_PRO=n
- -CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC_LITE=y : The "Lite" version
- CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC_PRO=n : The "Pro" version
+ -CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC=n : Enable the Atollic toolchain
+ +CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC=y :
-CONFIG_INTELHEX_BINARY=y : Suppress generation FLASH download formats
+CONFIG_INTELHEX_BINARY=n : (Only necessary with the "Lite" version)
diff --git a/nuttx/configs/stm32f429i-disco/README.txt b/nuttx/configs/stm32f429i-disco/README.txt
index 516cec537..d79008c0c 100644
--- a/nuttx/configs/stm32f429i-disco/README.txt
+++ b/nuttx/configs/stm32f429i-disco/README.txt
@@ -231,29 +231,14 @@ There are two version of the FPU support built into the STM32 port.
CFLAGS
------
-Only the Atollic toolchain has built-in support for the Cortex-M4 FPU. You will see
+Only recent GCC toolchains have built-in support for the Cortex-M4 FPU. You will see
the following lines in each Make.defs file:
- ifeq ($(CONFIG_STM32_ATOLLIC_LITE),y)
- # Atollic toolchain under Windows
- ...
ifeq ($(CONFIG_ARCH_FPU),y)
ARCHCPUFLAGS = -mcpu=cortex-m4 -mthumb -march=armv7e-m -mfpu=fpv4-sp-d16 -mfloat-abi=hard
else
ARCHCPUFLAGS = -mcpu=cortex-m3 -mthumb -mfloat-abi=soft
endif
- endif
-
-If you are using a toolchain other than the Atollic toolchain, then to use the FPU
-you will also have to modify the CFLAGS to enable compiler support for the ARMv7-M
-FPU. As of this writing, there are not many GCC toolchains that will support the
-ARMv7-M FPU.
-
-As a minimum you will need to add CFLAG options to (1) enable hardware floating point
-code generation, and to (2) select the FPU implementation. You might try the same
-options as used with the Atollic toolchain in the Make.defs file:
-
- ARCHCPUFLAGS = -mcpu=cortex-m4 -mthumb -march=armv7e-m -mfpu=fpv4-sp-d16 -mfloat-abi=hard
Configuration Changes
---------------------
@@ -261,22 +246,20 @@ Configuration Changes
Below are all of the configuration changes that I had to make to configs/stm3240g-eval/nsh2
in order to successfully build NuttX using the Atollic toolchain WITH FPU support:
- -CONFIG_ARCH_FPU=n : Enable FPU support
+ -CONFIG_ARCH_FPU=n : Enable FPU support
+CONFIG_ARCH_FPU=y
- -CONFIG_STM32_CODESOURCERYW=y : Disable the CodeSourcery toolchain
- +CONFIG_STM32_CODESOURCERYW=n
+ -CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=y : Disable the CodeSourcery toolchain
+ +CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=n
- -CONFIG_STM32_ATOLLIC_LITE=n : Enable *one* the Atollic toolchains
- CONFIG_STM32_ATOLLIC_PRO=n
- -CONFIG_STM32_ATOLLIC_LITE=y : The "Lite" version
- CONFIG_STM32_ATOLLIC_PRO=n : The "Pro" version
+ -CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC=n : Enable the Atollic toolchain
+ +CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC=y :
- -CONFIG_INTELHEX_BINARY=y : Suppress generation FLASH download formats
- +CONFIG_INTELHEX_BINARY=n : (Only necessary with the "Lite" version)
+ -CONFIG_INTELHEX_BINARY=y : Suppress generation FLASH download formats
+ +CONFIG_INTELHEX_BINARY=n : (Only necessary with the "Lite" version)
- -CONFIG_HAVE_CXX=y : Suppress generation of C++ code
- +CONFIG_HAVE_CXX=n : (Only necessary with the "Lite" version)
+ -CONFIG_HAVE_CXX=y : Suppress generation of C++ code
+ +CONFIG_HAVE_CXX=n : (Only necessary with the "Lite" version)
See the section above on Toolchains, NOTE 2, for explanations for some of
the configuration settings. Some of the usual settings are just not supported
diff --git a/nuttx/configs/stm32f4discovery/README.txt b/nuttx/configs/stm32f4discovery/README.txt
index b12dc49db..a28a282f6 100644
--- a/nuttx/configs/stm32f4discovery/README.txt
+++ b/nuttx/configs/stm32f4discovery/README.txt
@@ -65,8 +65,7 @@ GNU Toolchain Options
CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=y : CodeSourcery under Windows
CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYL=y : CodeSourcery under Linux
- CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC_LITE=y : The free, "Lite" version of Atollic toolchain under Windows
- CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC_PRO=y : The paid, "Pro" version of Atollic toolchain under Windows
+ CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC=y : The Atollic toolchain under Windows
CONFIG_ARMV7M_TOOLCHAIN_DEVKITARM=y : devkitARM under Windows
CONFIG_ARMV7M_TOOLCHAIN_RAISONANCE=y : Raisonance RIDE7 under Windows
CONFIG_ARMV7M_TOOLCHAIN_BUILDROOT=y : NuttX buildroot under Linux or Cygwin (default)
@@ -463,29 +462,14 @@ There are two version of the FPU support built into the STM32 port.
CFLAGS
------
-Only the Atollic toolchain has built-in support for the Cortex-M4 FPU. You will see
+Only recent GCC toolchains have built-in support for the Cortex-M4 FPU. You will see
the following lines in each Make.defs file:
- ifeq ($(CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC_LITE),y)
- # Atollic toolchain under Windows
- ...
ifeq ($(CONFIG_ARCH_FPU),y)
ARCHCPUFLAGS = -mcpu=cortex-m4 -mthumb -march=armv7e-m -mfpu=fpv4-sp-d16 -mfloat-abi=hard
else
ARCHCPUFLAGS = -mcpu=cortex-m3 -mthumb -mfloat-abi=soft
endif
- endif
-
-If you are using a toolchain other than the Atollic toolchain, then to use the FPU
-you will also have to modify the CFLAGS to enable compiler support for the ARMv7-M
-FPU. As of this writing, there are not many GCC toolchains that will support the
-ARMv7-M FPU.
-
-As a minimum you will need to add CFLAG options to (1) enable hardware floating point
-code generation, and to (2) select the FPU implementation. You might try the same
-options as used with the Atollic toolchain in the Make.defs file:
-
- ARCHCPUFLAGS = -mcpu=cortex-m4 -mthumb -march=armv7e-m -mfpu=fpv4-sp-d16 -mfloat-abi=hard
Configuration Changes
---------------------
@@ -499,10 +483,8 @@ in order to successfully build NuttX using the Atollic toolchain WITH FPU suppor
-CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=y : Disable the CodeSourcery toolchain
+CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=n
- -CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC_LITE=n : Enable *one* the Atollic toolchains
- CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC_PRO=n
- -CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC_LITE=y : The "Lite" version
- CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC_PRO=n : The "Pro" version
+ -CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC=n : Enable the Atollic toolchain
+ +CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC=y :
-CONFIG_INTELHEX_BINARY=y : Suppress generation FLASH download formats
+CONFIG_INTELHEX_BINARY=n : (Only necessary with the "Lite" version)
diff --git a/nuttx/configs/stm32f4discovery/winbuild/defconfig b/nuttx/configs/stm32f4discovery/winbuild/defconfig
index 06ba74df9..e156626ee 100644
--- a/nuttx/configs/stm32f4discovery/winbuild/defconfig
+++ b/nuttx/configs/stm32f4discovery/winbuild/defconfig
@@ -124,12 +124,11 @@ CONFIG_ARCH_CHIP_STM32F407VG=y
# CONFIG_ARCH_CHIP_STM32F407IE is not set
# CONFIG_ARCH_CHIP_STM32F407IG is not set
CONFIG_STM32_STM32F40XX=y
-CONFIG_STM32_CODESOURCERYW=y
-# CONFIG_STM32_CODESOURCERYL is not set
-# CONFIG_STM32_ATOLLIC_LITE is not set
-# CONFIG_STM32_ATOLLIC_PRO is not set
-# CONFIG_STM32_DEVKITARM is not set
-# CONFIG_STM32_RAISONANCE is not set
+CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=y
+# CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYL is not set
+# CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC is not set
+# CONFIG_ARMV7M_TOOLCHAIN_DEVKITARM is not set
+# CONFIG_ARMV7M_TOOLCHAIN_RAISONANCE is not set
# CONFIG_ARMV7M_TOOLCHAIN_BUILDROOT is not set
# CONFIG_STM32_DFU is not set
diff --git a/nuttx/configs/stm32ldiscovery/README.txt b/nuttx/configs/stm32ldiscovery/README.txt
index d1da30f2a..81cc6abf3 100644
--- a/nuttx/configs/stm32ldiscovery/README.txt
+++ b/nuttx/configs/stm32ldiscovery/README.txt
@@ -213,8 +213,7 @@ GNU Toolchain Options
CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=y : CodeSourcery under Windows
CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYL=y : CodeSourcery under Linux
- CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC_LITE=y : The free, "Lite" version of Atollic toolchain under Windows
- CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC_PRO=y : The paid, "Pro" version of Atollic toolchain under Windows
+ CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC=y : The Atollic toolchain under Windows
CONFIG_ARMV7M_TOOLCHAIN_DEVKITARM=y : devkitARM under Windows
CONFIG_ARMV7M_TOOLCHAIN_RAISONANCE=y : Raisonance RIDE7 under Windows
CONFIG_ARMV7M_TOOLCHAIN_BUILDROOT=y : NuttX buildroot under Linux or Cygwin (default)
diff --git a/nuttx/configs/stm32vldiscovery/README.txt b/nuttx/configs/stm32vldiscovery/README.txt
index acdb3697c..932d11a86 100644
--- a/nuttx/configs/stm32vldiscovery/README.txt
+++ b/nuttx/configs/stm32vldiscovery/README.txt
@@ -46,8 +46,7 @@ GNU Toolchain Options
CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW=y : CodeSourcery under Windows
CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYL=y : CodeSourcery under Linux
- CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC_LITE=y : The free, "Lite" version of Atollic toolchain under Windows
- CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC_PRO=y : The paid, "Pro" version of Atollic toolchain under Windows
+ CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC=y : The Atollic toolchain under Windows
CONFIG_ARMV7M_TOOLCHAIN_DEVKITARM=y : devkitARM under Windows
CONFIG_ARMV7M_TOOLCHAIN_RAISONANCE=y : Raisonance RIDE7 under Windows
CONFIG_ARMV7M_TOOLCHAIN_BUILDROOT=y : NuttX buildroot under Linux or Cygwin (default)
@@ -469,4 +468,4 @@ Where <subdir> is one of the following:
Default toolchain:
- CONFIG_STM32_CODESOURCERYL=y : CodeSourcery under Linux / Mac OS X
+ CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYL=y : CodeSourcery under Linux / Mac OS X
diff --git a/nuttx/configs/stm32vldiscovery/nsh/defconfig b/nuttx/configs/stm32vldiscovery/nsh/defconfig
index a43f6c588..8ef17dacb 100644
--- a/nuttx/configs/stm32vldiscovery/nsh/defconfig
+++ b/nuttx/configs/stm32vldiscovery/nsh/defconfig
@@ -117,12 +117,11 @@ CONFIG_ARCH_CHIP_STM32F100RB=y
CONFIG_STM32_STM32F10XX=y
CONFIG_STM32_VALUELINE=y
CONFIG_STM32_HIGHDENSITY=y
-# CONFIG_STM32_CODESOURCERYW is not set
-CONFIG_STM32_CODESOURCERYL=y
-# CONFIG_STM32_ATOLLIC_LITE is not set
-# CONFIG_STM32_ATOLLIC_PRO is not set
-# CONFIG_STM32_DEVKITARM is not set
-# CONFIG_STM32_RAISONANCE is not set
+# CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW is not set
+CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYL=y
+# CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC is not set
+# CONFIG_ARMV7M_TOOLCHAIN_DEVKITARM is not set
+# CONFIG_ARMV7M_TOOLCHAIN_RAISONANCE is not set
# CONFIG_ARMV7M_TOOLCHAIN_BUILDROOT is not set
# CONFIG_STM32_DFU is not set