2012-04-06 17:49:35 +02:00
|
|
|
#
|
|
|
|
# For a description of the syntax of this configuration file,
|
2012-04-06 18:45:52 +02:00
|
|
|
# see misc/tools/kconfig-language.txt.
|
2012-04-06 17:49:35 +02:00
|
|
|
#
|
2012-04-11 04:04:59 +02:00
|
|
|
|
2012-04-13 16:27:44 +02:00
|
|
|
if ARCH_ARM
|
2012-10-20 18:07:49 +02:00
|
|
|
comment "ARM Options"
|
|
|
|
|
2012-04-11 04:04:59 +02:00
|
|
|
choice
|
|
|
|
prompt "ARM chip selection"
|
|
|
|
default ARCH_CHIP_STM32
|
|
|
|
|
|
|
|
config ARCH_CHIP_C5471
|
|
|
|
bool "TMS320 C5471"
|
2012-09-05 19:50:53 +02:00
|
|
|
select ARCH_ARM7TDMI
|
2012-09-06 22:08:25 +02:00
|
|
|
select ARCH_HAVE_LOWVECTORS
|
2012-04-11 04:04:59 +02:00
|
|
|
---help---
|
|
|
|
TI TMS320 C5471, A180, or DA180 (ARM7TDMI)
|
|
|
|
|
|
|
|
config ARCH_CHIP_CALYPSO
|
|
|
|
bool "Calypso"
|
2012-09-05 19:50:53 +02:00
|
|
|
select ARCH_ARM7TDMI
|
2012-09-06 01:02:43 +02:00
|
|
|
select ARCH_HAVE_HEAP2
|
2012-09-06 22:08:25 +02:00
|
|
|
select ARCH_HAVE_LOWVECTORS
|
2012-04-11 04:04:59 +02:00
|
|
|
---help---
|
|
|
|
TI Calypso-based cell phones (ARM7TDMI)
|
|
|
|
|
|
|
|
config ARCH_CHIP_DM320
|
|
|
|
bool "TMS320 DM320"
|
2012-09-05 19:50:53 +02:00
|
|
|
select ARCH_ARM926EJS
|
2012-09-06 22:08:25 +02:00
|
|
|
select ARCH_HAVE_LOWVECTORS
|
|
|
|
select ARCH_HAVE_MMU
|
2012-04-11 04:04:59 +02:00
|
|
|
---help---
|
|
|
|
TI DMS320 DM320 (ARM926EJS)
|
|
|
|
|
|
|
|
config ARCH_CHIP_IMX
|
|
|
|
bool "Freescale iMX"
|
2012-09-05 19:50:53 +02:00
|
|
|
select ARCH_ARM920T
|
2012-09-06 01:02:43 +02:00
|
|
|
select ARCH_HAVE_HEAP2
|
2012-09-06 22:08:25 +02:00
|
|
|
select ARCH_HAVE_LOWVECTORS
|
|
|
|
select ARCH_HAVE_MMU
|
2012-04-11 04:04:59 +02:00
|
|
|
---help---
|
|
|
|
Freescale iMX architectures (ARM920T)
|
|
|
|
|
|
|
|
config ARCH_CHIP_KINETIS
|
|
|
|
bool "Freescale Kinetis"
|
2012-09-05 19:50:53 +02:00
|
|
|
select ARCH_CORTEXM4
|
2012-09-06 22:08:25 +02:00
|
|
|
select ARCH_HAVE_MPU
|
2013-06-03 23:11:56 +02:00
|
|
|
select ARCH_HAVE_FPU
|
2013-01-14 23:06:19 +01:00
|
|
|
select ARCH_HAVE_RAMFUNCS
|
|
|
|
select ARCH_RAMFUNCS
|
2012-04-11 04:04:59 +02:00
|
|
|
---help---
|
|
|
|
Freescale Kinetis Architectures (ARM Cortex-M4)
|
|
|
|
|
2013-04-16 16:48:42 +02:00
|
|
|
config ARCH_CHIP_KL
|
|
|
|
bool "Freescale Kinetis L"
|
|
|
|
select ARCH_CORTEXM0
|
|
|
|
select ARCH_HAVE_CMNVECTOR
|
|
|
|
---help---
|
|
|
|
Freescale Kinetis L Architectures (ARM Cortex-M0+)
|
|
|
|
|
2013-01-08 21:56:40 +01:00
|
|
|
config ARCH_CHIP_LM
|
2012-04-11 04:04:59 +02:00
|
|
|
bool "TI Stellaris"
|
2012-09-06 22:08:25 +02:00
|
|
|
select ARCH_HAVE_MPU
|
2012-04-11 04:04:59 +02:00
|
|
|
---help---
|
2013-03-01 22:41:29 +01:00
|
|
|
TI Stellaris LMS3 and LM4F architecutres (ARM Cortex-M3/4)
|
2012-04-11 04:04:59 +02:00
|
|
|
|
|
|
|
config ARCH_CHIP_LPC17XX
|
|
|
|
bool "NXP LPC17xx"
|
2012-09-05 19:50:53 +02:00
|
|
|
select ARCH_CORTEXM3
|
2013-02-08 01:17:54 +01:00
|
|
|
select ARCH_HAVE_CMNVECTOR
|
2012-09-06 22:08:25 +02:00
|
|
|
select ARCH_HAVE_MPU
|
2012-04-11 04:04:59 +02:00
|
|
|
---help---
|
|
|
|
NXP LPC17xx architectures (ARM Cortex-M3)
|
|
|
|
|
|
|
|
config ARCH_CHIP_LPC214X
|
|
|
|
bool "NXP LPC214x"
|
2012-09-05 19:50:53 +02:00
|
|
|
select ARCH_ARM7TDMI
|
2012-09-06 22:08:25 +02:00
|
|
|
select ARCH_HAVE_LOWVECTORS
|
2012-04-11 04:04:59 +02:00
|
|
|
---help---
|
|
|
|
NXP LPC2145x architectures (ARM7TDMI)
|
|
|
|
|
|
|
|
config ARCH_CHIP_LPC2378
|
|
|
|
bool "NXP LPC2378"
|
2012-09-05 19:50:53 +02:00
|
|
|
select ARCH_ARM7TDMI
|
2012-09-06 22:08:25 +02:00
|
|
|
select ARCH_HAVE_LOWVECTORS
|
2012-04-11 04:04:59 +02:00
|
|
|
---help---
|
|
|
|
NXP LPC2145x architectures (ARM7TDMI)
|
|
|
|
|
|
|
|
config ARCH_CHIP_LPC31XX
|
|
|
|
bool "NXP LPC31XX"
|
2012-09-05 19:50:53 +02:00
|
|
|
select ARCH_ARM926EJS
|
2012-09-06 22:08:25 +02:00
|
|
|
select ARCH_HAVE_LOWVECTORS
|
|
|
|
select ARCH_HAVE_MMU
|
2012-04-11 04:04:59 +02:00
|
|
|
---help---
|
|
|
|
NPX LPC31XX architectures (ARM926EJS).
|
|
|
|
|
2012-07-04 00:42:27 +02:00
|
|
|
config ARCH_CHIP_LPC43XX
|
|
|
|
bool "NXP LPC43XX"
|
2012-09-05 19:50:53 +02:00
|
|
|
select ARCH_CORTEXM4
|
2012-09-06 22:08:25 +02:00
|
|
|
select ARCH_HAVE_CMNVECTOR
|
2012-09-06 17:38:53 +02:00
|
|
|
select ARMV7M_CMNVECTOR
|
2012-09-06 22:08:25 +02:00
|
|
|
select ARCH_HAVE_MPU
|
2013-06-03 23:11:56 +02:00
|
|
|
select ARCH_HAVE_FPU
|
2012-07-04 00:42:27 +02:00
|
|
|
---help---
|
|
|
|
NPX LPC43XX architectures (ARM Cortex-M4).
|
|
|
|
|
2013-02-16 19:13:12 +01:00
|
|
|
config ARCH_CHIP_NUC1XX
|
|
|
|
bool "Nuvoton NUC100/120"
|
2013-02-16 17:32:19 +01:00
|
|
|
select ARCH_CORTEXM0
|
|
|
|
select ARCH_HAVE_CMNVECTOR
|
|
|
|
---help---
|
|
|
|
NPX LPC43XX architectures (ARM Cortex-M4).
|
|
|
|
|
2013-06-02 18:33:57 +02:00
|
|
|
config ARCH_CHIP_SAM34
|
|
|
|
bool "Atmel AT91SAM3/SAM4"
|
2012-09-06 22:08:25 +02:00
|
|
|
select ARCH_HAVE_MPU
|
2012-04-11 04:04:59 +02:00
|
|
|
---help---
|
2013-06-02 18:33:57 +02:00
|
|
|
Atmel AT91SAM3 (ARM Cortex-M3) and SAM4 (ARM Cortex-M4) architectures
|
2012-04-11 04:04:59 +02:00
|
|
|
|
|
|
|
config ARCH_CHIP_STM32
|
|
|
|
bool "STMicro STM32"
|
2012-09-06 22:08:25 +02:00
|
|
|
select ARCH_HAVE_CMNVECTOR
|
|
|
|
select ARCH_HAVE_MPU
|
2012-09-17 20:35:37 +02:00
|
|
|
select ARCH_HAVE_I2CRESET
|
2012-04-11 04:04:59 +02:00
|
|
|
---help---
|
|
|
|
STMicro STM32 architectures (ARM Cortex-M3/4).
|
|
|
|
|
|
|
|
config ARCH_CHIP_STR71X
|
|
|
|
bool "STMicro STR71x"
|
2012-09-05 19:50:53 +02:00
|
|
|
select ARCH_ARM7TDMI
|
2012-09-06 22:08:25 +02:00
|
|
|
select ARCH_HAVE_LOWVECTORS
|
2012-04-11 04:04:59 +02:00
|
|
|
---help---
|
|
|
|
STMicro STR71x architectures (ARM7TDMI).
|
|
|
|
|
|
|
|
endchoice
|
|
|
|
|
2012-04-17 15:48:39 +02:00
|
|
|
config ARCH_ARM7TDMI
|
|
|
|
bool
|
|
|
|
|
|
|
|
config ARCH_ARM926EJS
|
|
|
|
bool
|
|
|
|
|
|
|
|
config ARCH_ARM920T
|
|
|
|
bool
|
|
|
|
|
2013-02-16 17:32:19 +01:00
|
|
|
config ARCH_CORTEXM0
|
|
|
|
bool
|
|
|
|
select ARCH_IRQPRIO
|
|
|
|
|
2012-09-05 19:50:53 +02:00
|
|
|
config ARCH_CORTEXM3
|
2012-04-17 15:48:39 +02:00
|
|
|
bool
|
2013-01-22 02:25:40 +01:00
|
|
|
select ARCH_IRQPRIO
|
2013-03-18 22:10:08 +01:00
|
|
|
select ARCH_HAVE_RAMVECTORS
|
2012-09-05 19:50:53 +02:00
|
|
|
|
|
|
|
config ARCH_CORTEXM4
|
|
|
|
bool
|
2013-01-22 02:25:40 +01:00
|
|
|
select ARCH_IRQPRIO
|
2013-03-18 22:10:08 +01:00
|
|
|
select ARCH_HAVE_RAMVECTORS
|
2012-09-05 19:50:53 +02:00
|
|
|
|
2012-04-17 15:48:39 +02:00
|
|
|
config ARCH_FAMILY
|
|
|
|
string
|
|
|
|
default "arm" if ARCH_ARM7TDMI || ARCH_ARM926EJS || ARCH_ARM920T
|
2013-02-16 17:32:19 +01:00
|
|
|
default "armv6-m" if ARCH_CORTEXM0
|
2012-09-05 19:50:53 +02:00
|
|
|
default "armv7-m" if ARCH_CORTEXM3 || ARCH_CORTEXM4
|
2012-04-17 15:48:39 +02:00
|
|
|
|
2012-04-23 21:55:32 +02:00
|
|
|
config ARCH_CHIP
|
2012-04-11 04:04:59 +02:00
|
|
|
string
|
2012-04-17 02:24:19 +02:00
|
|
|
default "c5471" if ARCH_CHIP_C5471
|
2012-04-11 04:04:59 +02:00
|
|
|
default "calypso" if ARCH_CHIP_CALYPSO
|
|
|
|
default "dm320" if ARCH_CHIP_DM320
|
|
|
|
default "imx" if ARCH_CHIP_IMX
|
|
|
|
default "kinetis" if ARCH_CHIP_KINETIS
|
2013-04-16 17:53:15 +02:00
|
|
|
default "kl" if ARCH_CHIP_KL
|
2013-01-08 21:56:40 +01:00
|
|
|
default "lm" if ARCH_CHIP_LM
|
2012-09-05 23:36:03 +02:00
|
|
|
default "lpc17xx" if ARCH_CHIP_LPC17XX
|
2012-04-11 04:04:59 +02:00
|
|
|
default "lpc214x" if ARCH_CHIP_LPC214X
|
|
|
|
default "lpc2378" if ARCH_CHIP_LPC2378
|
|
|
|
default "lpc31xx" if ARCH_CHIP_LPC31XX
|
2012-07-11 00:27:51 +02:00
|
|
|
default "lpc43xx" if ARCH_CHIP_LPC43XX
|
2013-02-16 19:13:12 +01:00
|
|
|
default "nuc1xx" if ARCH_CHIP_NUC1XX
|
2013-06-02 21:57:22 +02:00
|
|
|
default "sam34" if ARCH_CHIP_SAM34
|
2012-04-11 04:04:59 +02:00
|
|
|
default "stm32" if ARCH_CHIP_STM32
|
|
|
|
default "str71x" if ARCH_CHIP_STR71X
|
|
|
|
|
2013-01-22 02:25:40 +01:00
|
|
|
config ARMV7M_USEBASEPRI
|
|
|
|
bool "Use BASEPRI Register"
|
|
|
|
default n
|
|
|
|
depends on ARCH_CORTEXM3 || ARCH_CORTEXM4
|
|
|
|
---help---
|
|
|
|
Use the BASEPRI register to enable and disable able interrupts. By
|
2013-04-22 17:10:58 +02:00
|
|
|
default, the PRIMASK register is used for this purpose. This
|
2013-01-22 02:25:40 +01:00
|
|
|
usually results in hardfaults that are properly handling by the
|
|
|
|
RTOS. Using the BASEPRI register will avoid these hardfault.
|
|
|
|
That is needed primarily for integration with some toolchains.
|
|
|
|
|
2012-11-03 16:48:03 +01:00
|
|
|
config ARCH_HAVE_CMNVECTOR
|
|
|
|
bool
|
|
|
|
|
2012-09-06 22:08:25 +02:00
|
|
|
config ARMV7M_CMNVECTOR
|
|
|
|
bool "Use common ARMv7-M vectors"
|
|
|
|
default n
|
|
|
|
depends on ARCH_HAVE_CMNVECTOR
|
|
|
|
---help---
|
|
|
|
Some architectures use their own, built-in vector logic. Some use only
|
|
|
|
the common vector logic. Some can use either their own built-in vector
|
|
|
|
logic or the common vector logic. This applies only to ARMv7-M
|
|
|
|
architectures.
|
|
|
|
|
2013-06-03 23:11:56 +02:00
|
|
|
config ARCH_HAVE_FPU
|
|
|
|
bool
|
|
|
|
default n
|
|
|
|
|
2012-09-06 22:08:25 +02:00
|
|
|
config ARCH_FPU
|
|
|
|
bool "FPU support"
|
|
|
|
default y
|
2013-06-03 23:11:56 +02:00
|
|
|
depends on ARCH_HAVE_FPU
|
2012-09-06 22:08:25 +02:00
|
|
|
---help---
|
|
|
|
Build in support for the ARM Cortex-M4 Floating Point Unit (FPU).
|
|
|
|
Check your chip specifications first; not all Cortex-M4 chips support the FPU.
|
|
|
|
|
|
|
|
config ARCH_HAVE_MPU
|
|
|
|
bool
|
2013-02-16 17:32:19 +01:00
|
|
|
default n
|
2012-09-06 22:08:25 +02:00
|
|
|
|
|
|
|
config ARMV7M_MPU
|
|
|
|
bool "MPU support"
|
|
|
|
default n
|
|
|
|
depends on ARCH_HAVE_MPU
|
|
|
|
---help---
|
|
|
|
Build in support for the ARM Cortex-M3/4 Memory Protection Unit (MPU).
|
|
|
|
Check your chip specifications first; not all Cortex-M3/4 chips support the MPU.
|
|
|
|
|
2013-03-11 18:51:42 +01:00
|
|
|
config ARMV7M_MPU_NREGIONS
|
|
|
|
int "Number of MPU regions"
|
|
|
|
default 8
|
|
|
|
depends on ARMV7M_MPU
|
|
|
|
---help---
|
|
|
|
This is the number of protection regions supported by the MPU.
|
|
|
|
|
2012-09-06 22:08:25 +02:00
|
|
|
config ARCH_HAVE_LOWVECTORS
|
|
|
|
bool
|
|
|
|
|
|
|
|
config ARCH_LOWVECTORS
|
|
|
|
bool "Vectors in low memory"
|
|
|
|
default n
|
|
|
|
depends on ARCH_HAVE_LOWVECTORS
|
|
|
|
---help---
|
|
|
|
Support ARM vectors in low memory.
|
|
|
|
|
|
|
|
config ARCH_HAVE_MMU
|
|
|
|
bool
|
|
|
|
|
|
|
|
config PGTABLE_VADDR
|
|
|
|
hex "Page table virtual address"
|
|
|
|
depends on ARCH_HAVE_MMU
|
|
|
|
---help---
|
|
|
|
Page table virtual address (might be defined in the board.h file). Not
|
|
|
|
applicable to all architectures.
|
|
|
|
|
|
|
|
config ARCH_ROMPGTABLE
|
|
|
|
bool "ROM page table"
|
|
|
|
default n
|
|
|
|
depends on ARCH_HAVE_MMU
|
|
|
|
---help---
|
|
|
|
Support a fixed memory mapping use a (read-only) page table in ROM/FLASH.
|
|
|
|
|
|
|
|
config PAGING
|
|
|
|
bool "On-demand paging"
|
|
|
|
default n
|
|
|
|
depends on ARCH_HAVE_MMU && !ARCH_ROMPGTABLE
|
|
|
|
---help---
|
|
|
|
If set =y in your configation file, this setting will enable the on-demand
|
|
|
|
paging feature as described in http://www.nuttx.org/NuttXDemandPaging.html.
|
|
|
|
|
2012-10-20 18:07:49 +02:00
|
|
|
config DEBUG_HARDFAULT
|
|
|
|
bool "Verbose Hard-Fault Debug"
|
|
|
|
default n
|
|
|
|
depends on DEBUG && (ARCH_CORTEXM3 || ARCH_CORTEXM4)
|
|
|
|
---help---
|
|
|
|
Enables verbose debug output when a hard fault is occurs. This verbose
|
|
|
|
output is sometimes helpful when debugging difficult hard fault problems,
|
|
|
|
but may be more than you typcially want to see.
|
|
|
|
|
2013-02-16 17:32:19 +01:00
|
|
|
if ARCH_CORTEXM0
|
|
|
|
source arch/arm/src/armv6-m/Kconfig
|
|
|
|
endif
|
2012-11-21 19:34:10 +01:00
|
|
|
if ARCH_CORTEXM3 || ARCH_CORTEXM4
|
|
|
|
source arch/arm/src/armv7-m/Kconfig
|
|
|
|
endif
|
2012-11-23 15:13:57 +01:00
|
|
|
if ARCH_ARM7TDMI || ARCH_ARM926EJS
|
|
|
|
source arch/arm/src/arm/Kconfig
|
|
|
|
endif
|
2012-07-11 00:27:51 +02:00
|
|
|
if ARCH_CHIP_C5471
|
2012-04-11 04:04:59 +02:00
|
|
|
source arch/arm/src/c5471/Kconfig
|
2012-07-11 00:27:51 +02:00
|
|
|
endif
|
|
|
|
if ARCH_CHIP_CALYPSO
|
2012-04-11 04:04:59 +02:00
|
|
|
source arch/arm/src/calypso/Kconfig
|
2012-07-11 00:27:51 +02:00
|
|
|
endif
|
|
|
|
if ARCH_CHIP_DM320
|
2012-04-11 04:04:59 +02:00
|
|
|
source arch/arm/src/dm320/Kconfig
|
2012-07-11 00:27:51 +02:00
|
|
|
endif
|
|
|
|
if ARCH_CHIP_IMX
|
2012-04-11 04:04:59 +02:00
|
|
|
source arch/arm/src/imx/Kconfig
|
2012-07-11 00:27:51 +02:00
|
|
|
endif
|
|
|
|
if ARCH_CHIP_KINETIS
|
2012-04-11 04:04:59 +02:00
|
|
|
source arch/arm/src/kinetis/Kconfig
|
2012-07-11 00:27:51 +02:00
|
|
|
endif
|
2013-04-16 17:53:15 +02:00
|
|
|
if ARCH_CHIP_KL
|
|
|
|
source arch/arm/src/kl/Kconfig
|
|
|
|
endif
|
2013-01-08 21:56:40 +01:00
|
|
|
if ARCH_CHIP_LM
|
|
|
|
source arch/arm/src/lm/Kconfig
|
2012-07-11 00:27:51 +02:00
|
|
|
endif
|
|
|
|
if ARCH_CHIP_LPC17XX
|
2012-04-11 04:04:59 +02:00
|
|
|
source arch/arm/src/lpc17xx/Kconfig
|
2012-07-11 00:27:51 +02:00
|
|
|
endif
|
|
|
|
if ARCH_CHIP_LPC214X
|
2012-04-11 04:04:59 +02:00
|
|
|
source arch/arm/src/lpc214x/Kconfig
|
2012-07-11 00:27:51 +02:00
|
|
|
endif
|
|
|
|
if ARCH_CHIP_LPC2378
|
2012-04-11 04:04:59 +02:00
|
|
|
source arch/arm/src/lpc2378/Kconfig
|
2012-07-11 00:27:51 +02:00
|
|
|
endif
|
|
|
|
if ARCH_CHIP_LPC31XX
|
2012-04-11 04:04:59 +02:00
|
|
|
source arch/arm/src/lpc31xx/Kconfig
|
2012-07-11 00:27:51 +02:00
|
|
|
endif
|
|
|
|
if ARCH_CHIP_LPC43XX
|
2012-07-04 00:42:27 +02:00
|
|
|
source arch/arm/src/lpc43xx/Kconfig
|
2012-07-11 00:27:51 +02:00
|
|
|
endif
|
2013-02-16 19:13:12 +01:00
|
|
|
if ARCH_CHIP_NUC1XX
|
2013-02-16 17:32:19 +01:00
|
|
|
source arch/arm/src/nuc1xx/Kconfig
|
|
|
|
endif
|
2013-06-02 18:33:57 +02:00
|
|
|
if ARCH_CHIP_SAM34
|
2013-06-02 21:57:22 +02:00
|
|
|
source arch/arm/src/sam34/Kconfig
|
2012-07-11 00:27:51 +02:00
|
|
|
endif
|
|
|
|
if ARCH_CHIP_STM32
|
2012-04-11 04:04:59 +02:00
|
|
|
source arch/arm/src/stm32/Kconfig
|
2012-07-11 00:27:51 +02:00
|
|
|
endif
|
|
|
|
if ARCH_CHIP_STR71X
|
2012-04-11 04:04:59 +02:00
|
|
|
source arch/arm/src/str71x/Kconfig
|
2012-07-11 00:27:51 +02:00
|
|
|
endif
|
2012-04-13 16:27:44 +02:00
|
|
|
|
|
|
|
endif
|