diff --git a/configs/cloudctrl/README.txt b/configs/cloudctrl/README.txt index 1fbcca7f427..24d673726fa 100644 --- a/configs/cloudctrl/README.txt +++ b/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/configs/cloudctrl/nsh/defconfig b/configs/cloudctrl/nsh/defconfig index 68c29bc2968..c47ccac1c0d 100644 --- a/configs/cloudctrl/nsh/defconfig +++ b/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/configs/ekk-lm3s9b96/README.txt b/configs/ekk-lm3s9b96/README.txt index 44802f60b1d..c7174d41fe4 100644 --- a/configs/ekk-lm3s9b96/README.txt +++ b/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/configs/fire-stm32v2/README.txt b/configs/fire-stm32v2/README.txt index 6b93739959c..5ae0a65cb76 100644 --- a/configs/fire-stm32v2/README.txt +++ b/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/configs/fire-stm32v2/nsh/defconfig b/configs/fire-stm32v2/nsh/defconfig index 6c41414c83d..a34f6c866f8 100644 --- a/configs/fire-stm32v2/nsh/defconfig +++ b/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/configs/lpc4330-xplorer/README.txt b/configs/lpc4330-xplorer/README.txt index f6d8d00eff1..982c2b6e528 100644 --- a/configs/lpc4330-xplorer/README.txt +++ b/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 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/configs/mikroe-stm32f4/README.txt b/configs/mikroe-stm32f4/README.txt index 1a0d29a9b18..01072094a1b 100644 --- a/configs/mikroe-stm32f4/README.txt +++ b/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/configs/open1788/README.txt b/configs/open1788/README.txt index ccb7e56333b..a97e4971440 100644 --- a/configs/open1788/README.txt +++ b/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/configs/shenzhou/README.txt b/configs/shenzhou/README.txt index 80963054946..bd25099e2a5 100644 --- a/configs/shenzhou/README.txt +++ b/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/configs/shenzhou/nsh/defconfig b/configs/shenzhou/nsh/defconfig index 48f6bd1a4a0..5ef66ea4731 100644 --- a/configs/shenzhou/nsh/defconfig +++ b/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/configs/shenzhou/thttpd/defconfig b/configs/shenzhou/thttpd/defconfig index 4bc56315741..ab9e43241d0 100644 --- a/configs/shenzhou/thttpd/defconfig +++ b/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/configs/spark/README.txt b/configs/spark/README.txt index 1937333eb27..1f82ce96c33 100644 --- a/configs/spark/README.txt +++ b/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/configs/stm3210e-eval/README.txt b/configs/stm3210e-eval/README.txt index 0394537c592..58b9a73cd50 100644 --- a/configs/stm3210e-eval/README.txt +++ b/configs/stm3210e-eval/README.txt @@ -968,9 +968,9 @@ Where 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/configs/stm3220g-eval/README.txt b/configs/stm3220g-eval/README.txt index 0aff45d105a..67a982ba60d 100644 --- a/configs/stm3220g-eval/README.txt +++ b/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/configs/stm3240g-eval/README.txt b/configs/stm3240g-eval/README.txt index 9d9c1f5d135..2af6ef5ac40 100644 --- a/configs/stm3240g-eval/README.txt +++ b/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/configs/stm3240g-eval/discover/defconfig b/configs/stm3240g-eval/discover/defconfig index cda6bd4992f..2cbfc45f979 100644 --- a/configs/stm3240g-eval/discover/defconfig +++ b/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/configs/stm3240g-eval/xmlrpc/defconfig b/configs/stm3240g-eval/xmlrpc/defconfig index 388b6988456..be5d22711fc 100644 --- a/configs/stm3240g-eval/xmlrpc/defconfig +++ b/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/configs/stm32_tiny/README.txt b/configs/stm32_tiny/README.txt index 1210ccc722a..b4847b27761 100644 --- a/configs/stm32_tiny/README.txt +++ b/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/configs/stm32f100rc_generic/README.txt b/configs/stm32f100rc_generic/README.txt index 481a921477f..d7c8e64e558 100644 --- a/configs/stm32f100rc_generic/README.txt +++ b/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 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/configs/stm32f100rc_generic/nsh/defconfig b/configs/stm32f100rc_generic/nsh/defconfig index be0c7c3a56e..3b745e0ed07 100644 --- a/configs/stm32f100rc_generic/nsh/defconfig +++ b/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/configs/stm32f3discovery/README.txt b/configs/stm32f3discovery/README.txt index 11a6da3e437..d557c2fdf25 100644 --- a/configs/stm32f3discovery/README.txt +++ b/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/configs/stm32f429i-disco/README.txt b/configs/stm32f429i-disco/README.txt index 516cec537c7..d79008c0c62 100644 --- a/configs/stm32f429i-disco/README.txt +++ b/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/configs/stm32f4discovery/README.txt b/configs/stm32f4discovery/README.txt index b12dc49dbf6..a28a282f6e0 100644 --- a/configs/stm32f4discovery/README.txt +++ b/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/configs/stm32f4discovery/winbuild/defconfig b/configs/stm32f4discovery/winbuild/defconfig index 06ba74df982..e156626ee5c 100644 --- a/configs/stm32f4discovery/winbuild/defconfig +++ b/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/configs/stm32ldiscovery/README.txt b/configs/stm32ldiscovery/README.txt index d1da30f2afd..81cc6abf307 100644 --- a/configs/stm32ldiscovery/README.txt +++ b/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/configs/stm32vldiscovery/README.txt b/configs/stm32vldiscovery/README.txt index acdb3697c57..932d11a860f 100644 --- a/configs/stm32vldiscovery/README.txt +++ b/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 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/configs/stm32vldiscovery/nsh/defconfig b/configs/stm32vldiscovery/nsh/defconfig index a43f6c58854..8ef17dacb2e 100644 --- a/configs/stm32vldiscovery/nsh/defconfig +++ b/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