diff --git a/arch/arm/include/nuc1xx/chip.h b/arch/arm/include/nuc1xx/chip.h index 0cf2c89b8a..bfc0189472 100644 --- a/arch/arm/include/nuc1xx/chip.h +++ b/arch/arm/include/nuc1xx/chip.h @@ -50,6 +50,10 @@ /* NUC100 Advanced Line (Low Density) */ #if defined(CONFIG_ARCH_CHIP_NUC100LC1BN) /* Flash 32K SRAM 4K, LQFP48 package */ +# define NUC100 1 /* NUC100 family */ +# undef NUC120 /* NUC120 family */ +# define NUC_LOW 1 /* Low density part */ +# undef NUC_MEDIUM /* Medium density part */ # define NUC_FLASH (32*1024) /* 32K FLASH */ # define NUC_SRAM (4*1024) /* 4K SRAM */ # define NUC_NIO 35 /* (35) GPIO */ @@ -68,6 +72,10 @@ # define NUC_RTC 1 /* RTC */ # undef NUC_EBI /* No EBI */ #elif defined(CONFIG_ARCH_CHIP_NUC100LD1BN) /* Flash 64K SRAM 4K, LQFP48 package */ +# define NUC100 1 /* NUC100 family */ +# undef NUC120 /* NUC120 family */ +# define NUC_LOW 1 /* Low density part */ +# undef NUC_MEDIUM /* Medium density part */ # define NUC_FLASH (64*1024) /* 64K FLASH */ # define NUC_SRAM (4*1024) /* 4K SRAM */ # define NUC_NIO 31 /* (35) GPIO */ @@ -86,6 +94,10 @@ # define NUC_RTC 1 /* RTC */ # undef NUC_EBI /* No EBI */ #elif defined(CONFIG_ARCH_CHIP_NUC100LD2BN) /* Flash 64K SRAM 8K, LQFP48 package */ +# define NUC100 1 /* NUC100 family */ +# undef NUC120 /* NUC120 family */ +# define NUC_LOW 1 /* Low density part */ +# undef NUC_MEDIUM /* Medium density part */ # define NUC_FLASH (64*1024) /* 64K FLASH */ # define NUC_SRAM (8*1024) /* 8K SRAM */ # define NUC_NIO 31 /* (35) GPIO */ @@ -104,6 +116,10 @@ # define NUC_RTC 1 /* RTC */ # undef NUC_EBI /* No EBI */ #elif defined(CONFIG_ARCH_CHIP_NUC100RC1BN) /* Flash 32K SRAM 4K, LQFP64 package */ +# define NUC100 1 /* NUC100 family */ +# undef NUC120 /* NUC120 family */ +# define NUC_LOW 1 /* Low density part */ +# undef NUC_MEDIUM /* Medium density part */ # define NUC_FLASH (32*1024) /* 32K FLASH */ # define NUC_SRAM (4*1024) /* 4K SRAM */ # define NUC_NIO 49 /* (49) GPIO */ @@ -122,6 +138,10 @@ # define NUC_RTC 1 /* RTC */ # define NUC_EBI 1 /* Supports EBI */ #elif defined(CONFIG_ARCH_CHIP_NUC100RD1BN) /* Flash 64K SRAM 4K, LQFP64 package */ +# define NUC100 1 /* NUC100 family */ +# undef NUC120 /* NUC120 family */ +# define NUC_LOW 1 /* Low density part */ +# undef NUC_MEDIUM /* Medium density part */ # define NUC_FLASH (64*1024) /* 64K FLASH */ # define NUC_SRAM (4*1024) /* 4K SRAM */ # define NUC_NIO 49 /* (49) GPIO */ @@ -140,6 +160,10 @@ # define NUC_RTC 1 /* RTC */ # define NUC_EBI 1 /* Supports EBI */ #elif defined(CONFIG_ARCH_CHIP_NUC100RD2BN) /* Flash 64K SRAM 8K, LQFP64 package */ +# define NUC100 1 /* NUC100 family */ +# undef NUC120 /* NUC120 family */ +# define NUC_LOW 1 /* Low density part */ +# undef NUC_MEDIUM /* Medium density part */ # define NUC_FLASH (64*1024) /* 64K FLASH */ # define NUC_SRAM (8*1024) /* 4K SRAM */ # define NUC_NIO 49 /* (49) GPIO */ @@ -161,6 +185,10 @@ /* NUC100 Advanced Line (Medium Density) */ #elif defined(CONFIG_ARCH_CHIP_NUC100LD3AN) /* Flash 64K SRAM 16K, LQFP48 package */ +# define NUC100 1 /* NUC100 family */ +# undef NUC120 /* NUC120 family */ +# undef NUC_LOW /* Low density part */ +# define NUC_MEDIUM 1 /* Medium density part */ # define NUC_FLASH (64*1024) /* 64K FLASH */ # define NUC_SRAM (16*1024) /* 16K SRAM */ # define NUC_NIO 35 /* (35) GPIO */ @@ -179,6 +207,10 @@ # define NUC_RTC 1 /* RTC */ # undef NUC_EBI /* No EBI */ #elif defined(CONFIG_ARCH_CHIP_NUC100LE3AN) /* Flash 128K SRAM 16K, LQFP48 package */ +# define NUC100 1 /* NUC100 family */ +# undef NUC120 /* NUC120 family */ +# undef NUC_LOW /* Low density part */ +# define NUC_MEDIUM 1 /* Medium density part */ # define NUC_FLASH (128*1024) /* 64K FLASH */ # define NUC_SRAM (16*1024) /* 16K SRAM */ # define NUC_NIO 35 /* (35) GPIO */ @@ -197,6 +229,10 @@ # define NUC_RTC 1 /* RTC */ # undef NUC_EBI /* No EBI */ #elif defined(CONFIG_ARCH_CHIP_NUC100RD3AN) /* Flash 64K SRAM 16K, LQFP64 package */ +# define NUC100 1 /* NUC100 family */ +# undef NUC120 /* NUC120 family */ +# undef NUC_LOW /* Low density part */ +# define NUC_MEDIUM 1 /* Medium density part */ # define NUC_FLASH (64*1024) /* 64K FLASH */ # define NUC_SRAM (16*1024) /* 16K SRAM */ # define NUC_NIO 49 /* (49) GPIO */ @@ -215,6 +251,10 @@ # define NUC_RTC 1 /* RTC */ # undef NUC_EBI /* No EBI */ #elif defined(CONFIG_ARCH_CHIP_NUC100RE3AN) /* Flash 128K SRAM 16K, LQFP64 package */ +# define NUC100 1 /* NUC100 family */ +# undef NUC120 /* NUC120 family */ +# undef NUC_LOW /* Low density part */ +# define NUC_MEDIUM 1 /* Medium density part */ # define NUC_FLASH (128*1024) /* 128K FLASH */ # define NUC_SRAM (16*1024) /* 16K SRAM */ # define NUC_NIO 49 /* (49) GPIO */ @@ -233,6 +273,10 @@ # define NUC_RTC 1 /* RTC */ # undef NUC_EBI /* No EBI */ #elif defined(CONFIG_ARCH_CHIP_NUC100VD2AN) /* Flash 64K SRAM 8K, LQFP100 package */ +# define NUC100 1 /* NUC100 family */ +# undef NUC120 /* NUC120 family */ +# undef NUC_LOW /* Low density part */ +# define NUC_MEDIUM 1 /* Medium density part */ # define NUC_FLASH (64*1024) /* 64K FLASH */ # define NUC_SRAM (8*1024) /* 8K SRAM */ # define NUC_NIO 80 /* (80) GPIO */ @@ -251,6 +295,10 @@ # define NUC_RTC 1 /* RTC */ # undef NUC_EBI /* No EBI */ #elif defined(CONFIG_ARCH_CHIP_NUC100VD3AN) /* Flash 64K SRAM 16K, LQFP100 package */ +# define NUC100 1 /* NUC100 family */ +# undef NUC120 /* NUC120 family */ +# undef NUC_LOW /* Low density part */ +# define NUC_MEDIUM 1 /* Medium density part */ # define NUC_FLASH (64*1024) /* 64K FLASH */ # define NUC_SRAM (16*1024) /* 16K SRAM */ # define NUC_NIO 80 /* (80) GPIO */ @@ -269,6 +317,10 @@ # define NUC_RTC 1 /* RTC */ # undef NUC_EBI /* No EBI */ #elif defined(CONFIG_ARCH_CHIP_NUC100VE3AN) /* Flash 128K SRAM 8K, LQFP100 package */ +# define NUC100 1 /* NUC100 family */ +# undef NUC120 /* NUC120 family */ +# undef NUC_LOW /* Low density part */ +# define NUC_MEDIUM 1 /* Medium density part */ # define NUC_FLASH (128*1024) /* 128K FLASH */ # define NUC_SRAM (16*1024) /* 16K SRAM */ # define NUC_NIO 80 /* (80) GPIO */ @@ -290,6 +342,10 @@ /* NUC120 USB Line (Low Density) */ #elif defined(CONFIG_ARCH_CHIP_NUC120LC1BN) /* Flash 32K SRAM 4K, LQFP48 package */ +# undef NUC100 /* NUC100 family */ +# define NUC120 1 /* NUC120 family */ +# define NUC_LOW 1 /* Low density part */ +# undef NUC_MEDIUM /* Medium density part */ # define NUC_FLASH (32*1024) /* 32K FLASH */ # define NUC_SRAM (4*1024) /* 4K SRAM */ # define NUC_NIO 31 /* (31) GPIO */ @@ -308,6 +364,10 @@ # define NUC_RTC 1 /* RTC */ # undef NUC_EBI /* No EBI */ #elif defined(CONFIG_ARCH_CHIP_NUC120LD1BN) /* Flash 64K SRAM 4K, LQFP48 package */ +# undef NUC100 /* NUC100 family */ +# define NUC120 1 /* NUC120 family */ +# define NUC_LOW 1 /* Low density part */ +# undef NUC_MEDIUM /* Medium density part */ # define NUC_FLASH (64*1024) /* 64K FLASH */ # define NUC_SRAM (4*1024) /* 4K SRAM */ # define NUC_NIO 31 /* (31) GPIO */ @@ -326,6 +386,10 @@ # define NUC_RTC 1 /* RTC */ # undef NUC_EBI /* No EBI */ #elif defined(CONFIG_ARCH_CHIP_NUC120LD2BN) /* Flash 64K SRAM 8K, LQFP48 package */ +# undef NUC100 /* NUC100 family */ +# define NUC120 1 /* NUC120 family */ +# define NUC_LOW 1 /* Low density part */ +# undef NUC_MEDIUM /* Medium density part */ # define NUC_FLASH (64*1024) /* 64K FLASH */ # define NUC_SRAM (8*1024) /* 8K SRAM */ # define NUC_NIO 31 /* (31) GPIO */ @@ -344,6 +408,10 @@ # define NUC_RTC 1 /* RTC */ # undef NUC_EBI /* No EBI */ #elif defined(CONFIG_ARCH_CHIP_NUC120RC1BN) /* Flash 32K SRAM 4K, LQFP64 package */ +# undef NUC100 /* NUC100 family */ +# define NUC120 1 /* NUC120 family */ +# define NUC_LOW 1 /* Low density part */ +# undef NUC_MEDIUM /* Medium density part */ # define NUC_FLASH (32*1024) /* 32K FLASH */ # define NUC_SRAM (4*1024) /* 4K SRAM */ # define NUC_NIO 45 /* (45) GPIO */ @@ -362,6 +430,10 @@ # define NUC_RTC 1 /* RTC */ # define NUC_EBI 1 /* Have EBI */ #elif defined(CONFIG_ARCH_CHIP_NUC120RD1BN) /* Flash 64K SRAM 4K, LQFP64 package */ +# undef NUC100 /* NUC100 family */ +# define NUC120 1 /* NUC120 family */ +# define NUC_LOW 1 /* Low density part */ +# undef NUC_MEDIUM /* Medium density part */ # define NUC_FLASH (64*1024) /* 64K FLASH */ # define NUC_SRAM (4*1024) /* 4K SRAM */ # define NUC_NIO 45 /* (45) GPIO */ @@ -380,6 +452,10 @@ # define NUC_RTC 1 /* RTC */ # define NUC_EBI 1 /* Have EBI */ #elif defined(CONFIG_ARCH_CHIP_NUC120RD2BN) /* Flash 64K SRAM 8K, LQFP64 package */ +# undef NUC100 /* NUC100 family */ +# define NUC120 1 /* NUC120 family */ +# define NUC_LOW 1 /* Low density part */ +# undef NUC_MEDIUM /* Medium density part */ # define NUC_FLASH (64*1024) /* 64K FLASH */ # define NUC_SRAM (8*1024) /* 8K SRAM */ # define NUC_NIO 45 /* (45) GPIO */ @@ -401,6 +477,10 @@ /* NUC120 USB Line (Medium Density) */ #elif defined(CONFIG_ARCH_CHIP_NUC120LD3AN) /* Flash 64K SRAM 16K, LQFP48 package */ +# undef NUC100 /* NUC100 family */ +# define NUC120 1 /* NUC120 family */ +# undef NUC_LOW /* Low density part */ +# define NUC_MEDIUM 1 /* Medium density part */ # define NUC_FLASH (64*1024) /* 64K FLASH */ # define NUC_SRAM (16*1024) /* 16K SRAM */ # define NUC_NIO 31 /* (31) GPIO */ @@ -419,6 +499,10 @@ # define NUC_RTC 1 /* RTC */ # undef NUC_EBI /* No EBI */ #elif defined(CONFIG_ARCH_CHIP_NUC120LE3AN) /* Flash 128K SRAM 16K, LQFP48 package */ +# undef NUC100 /* NUC100 family */ +# define NUC120 1 /* NUC120 family */ +# undef NUC_LOW /* Low density part */ +# define NUC_MEDIUM 1 /* Medium density part */ # define NUC_FLASH (128*1024) /* 128K FLASH */ # define NUC_SRAM (16*1024) /* 16K SRAM */ # define NUC_NIO 31 /* (31) GPIO */ @@ -437,6 +521,10 @@ # define NUC_RTC 1 /* RTC */ # undef NUC_EBI /* No EBI */ #elif defined(CONFIG_ARCH_CHIP_NUC120RD3AN) /* Flash 64K SRAM 16K, LQFP64 package */ +# undef NUC100 /* NUC100 family */ +# define NUC120 1 /* NUC120 family */ +# undef NUC_LOW /* Low density part */ +# define NUC_MEDIUM 1 /* Medium density part */ # define NUC_FLASH (64*1024) /* 64K FLASH */ # define NUC_SRAM (16*1024) /* 16K SRAM */ # define NUC_NIO 45 /* (45) GPIO */ @@ -455,6 +543,10 @@ # define NUC_RTC 1 /* RTC */ # undef NUC_EBI /* No EBI */ #elif defined(CONFIG_ARCH_CHIP_NUC120RE3AN) /* Flash 128K SRAM 16K, LQFP64 package */ +# undef NUC100 /* NUC100 family */ +# define NUC120 1 /* NUC120 family */ +# undef NUC_LOW /* Low density part */ +# define NUC_MEDIUM 1 /* Medium density part */ # define NUC_FLASH (128*1024) /* 128K FLASH */ # define NUC_SRAM (16*1024) /* 16K SRAM */ # define NUC_NIO 45 /* (45) GPIO */ @@ -473,6 +565,10 @@ # define NUC_RTC 1 /* RTC */ # undef NUC_EBI /* No EBI */ #elif defined(CONFIG_ARCH_CHIP_NUC120VD2AN) /* Flash 64K SRAM 8K, LQFP100 package */ +# undef NUC100 /* NUC100 family */ +# define NUC120 1 /* NUC120 family */ +# undef NUC_LOW /* Low density part */ +# define NUC_MEDIUM 1 /* Medium density part */ # define NUC_FLASH (64*1024) /* 64K FLASH */ # define NUC_SRAM (8*1024) /* 8K SRAM */ # define NUC_NIO 76 /* (76) GPIO */ @@ -491,6 +587,10 @@ # define NUC_RTC 1 /* RTC */ # undef NUC_EBI /* No EBI */ #elif defined(CONFIG_ARCH_CHIP_NUC120VD3AN) /* Flash 64K SRAM 16K, LQFP100 package */ +# undef NUC100 /* NUC100 family */ +# define NUC120 1 /* NUC120 family */ +# undef NUC_LOW /* Low density part */ +# define NUC_MEDIUM 1 /* Medium density part */ # define NUC_FLASH (64*1024) /* 64K FLASH */ # define NUC_SRAM (16*1024) /* 16K SRAM */ # define NUC_NIO 76 /* (76) GPIO */ @@ -509,6 +609,10 @@ # define NUC_RTC 1 /* RTC */ # undef NUC_EBI /* No EBI */ #elif defined(CONFIG_ARCH_CHIP_NUC120VE3AN) /* Flash 128K SRAM 16K, LQFP100 package */ +# undef NUC100 /* NUC100 family */ +# define NUC120 1 /* NUC120 family */ +# undef NUC_LOW /* Low density part */ +# define NUC_MEDIUM 1 /* Medium density part */ # define NUC_FLASH (128*1024) /* 128K FLASH */ # define NUC_SRAM (16*1024) /* 16K SRAM */ # define NUC_NIO 76 /* (76) GPIO */ diff --git a/arch/arm/include/nuc1xx/irq.h b/arch/arm/include/nuc1xx/irq.h index fcea3e1657..4c2eea2676 100644 --- a/arch/arm/include/nuc1xx/irq.h +++ b/arch/arm/include/nuc1xx/irq.h @@ -45,6 +45,7 @@ ************************************************************************************/ #include +#include /************************************************************************************ * Pre-processor Definitions @@ -72,10 +73,10 @@ #define NUC_IRQ_INTERRUPT (16) -#if defined(CONFIG_ARCH_CHIP_NUC120) +#if defined(NUC120) # include #else -# error "Unrecognized NUC chip" +# error "Unrecognized/unsupported NUC chip" #endif /************************************************************************************ diff --git a/arch/arm/src/armv6-m/Kconfig b/arch/arm/src/armv6-m/Kconfig index 3dea706d44..e22ef5a8f4 100644 --- a/arch/arm/src/armv6-m/Kconfig +++ b/arch/arm/src/armv6-m/Kconfig @@ -44,16 +44,4 @@ config ARMV6M_TOOLCHAIN_GNU_EABI This option should work for any modern GNU toolchain (GCC 4.5 or newer) configured for arm-none-eabi. -config ARMV6M_TOOLCHAIN_RAISONANCE - bool "STMicro Raisonance for Windows" - depends on HOST_WINDOWS - endchoice - -config ARMV6M_OABI_TOOLCHAIN - bool "OABI (vs EABI)" - default y - depends on ARMV6M_TOOLCHAIN_BUILDROOT - ---help--- - Most of the older buildroot toolchains are OABI and are named arm-nuttx-elf- vs. arm-nuttx-eabi- - diff --git a/arch/arm/src/armv6-m/Toolchain.defs b/arch/arm/src/armv6-m/Toolchain.defs index 064517014b..a85a97a3bd 100644 --- a/arch/arm/src/armv6-m/Toolchain.defs +++ b/arch/arm/src/armv6-m/Toolchain.defs @@ -66,9 +66,6 @@ endif ifeq ($(filter y, $(CONFIG_ARMV6M_TOOLCHAIN_GNU_EABI)),y) CONFIG_ARMV6M_TOOLCHAIN ?= GNU_EABI endif -ifeq ($(filter y, $(CONFIG_ARMV6M_TOOLCHAIN_RAISONANCE)),y) - CONFIG_ARMV6M_TOOLCHAIN ?= RAISONANCE -endif # # Supported toolchains @@ -102,16 +99,10 @@ endif # NuttX buildroot under Linux or Cygwin ifeq ($(CONFIG_ARMV6M_TOOLCHAIN),BUILDROOT) -ifeq ($(CONFIG_ARMV6M_OABI_TOOLCHAIN),y) - CROSSDEV ?= arm-nuttx-elf- - ARCROSSDEV ?= arm-nuttx-elf- - ARCHCPUFLAGS = -mtune=cortex-m0 -march=armv6-m -mfloat-abi=soft -else CROSSDEV ?= arm-nuttx-eabi- ARCROSSDEV ?= arm-nuttx-eabi- ARCHCPUFLAGS = -mcpu=cortex-m0 -mthumb -mfloat-abi=soft -endif -MAXOPTIMIZATION = -Os + MAXOPTIMIZATION = -Os endif # Code Red RedSuite under Linux @@ -172,14 +163,3 @@ ifeq ($(CONFIG_ARMV6M_TOOLCHAIN),GNU_EABI) MAXOPTIMIZATION = -O3 ARCHCPUFLAGS = -mcpu=cortex_m0 -mthumb -march=armv6e-m -mfloat-abi=soft endif - -# Raisonance RIDE7 under Windows - -ifeq ($(CONFIG_ARMV6M_TOOLCHAIN),RAISONANCE) - CROSSDEV ?= arm-none-eabi- - ARCROSSDEV ?= arm-none-eabi- - ifneq ($(CONFIG_WINDOWS_NATIVE),y) - WINTOOL = y - endif - ARCHCPUFLAGS = -mcpu=cortex-m0 -mthumb -mfloat-abi=soft -endif diff --git a/arch/arm/src/nuc1xx/chip/nuc_config.h b/arch/arm/src/nuc1xx/chip/nuc_config.h index 24f394bd25..cfc15bae99 100644 --- a/arch/arm/src/nuc1xx/chip/nuc_config.h +++ b/arch/arm/src/nuc1xx/chip/nuc_config.h @@ -1,5 +1,5 @@ /******************************************************************************************** - * arch/arm/src/nuc1xx/chip/nuc_adc.h + * arch/arm/src/nuc1xx/chip/nuc_config.h * * Copyright (C) 2013 Gregory Nutt. All rights reserved. * Author: Gregory Nutt @@ -33,8 +33,8 @@ * ********************************************************************************************/ -#ifndef __ARCH_ARM_SRC_NUC1XX_CHIP_NUC_ADC_H -#define __ARCH_ARM_SRC_NUC1XX_CHIP_NUC_ADC_H +#ifndef __ARCH_ARM_SRC_NUC1XX_CHIP_NUC_CONFIG_H +#define __ARCH_ARM_SRC_NUC1XX_CHIP_NUC_CONFIG_H /******************************************************************************************** * Included Files @@ -114,4 +114,4 @@ * Public Functions ********************************************************************************************/ -#endif /* __ARCH_ARM_SRC_NUC1XX_CHIP_NUC_ADC_H */ +#endif /* __ARCH_ARM_SRC_NUC1XX_CHIP_NUC_CONFIG_H */