nuttx/arch/arm/src/samdl/Kconfig
2015-06-20 14:31:53 -06:00

718 lines
13 KiB
Plaintext

#
# For a description of the syntax of this configuration file,
# see misc/tools/kconfig-language.txt.
#
comment "Atmel SAMD/L Configuration Options"
choice
prompt "Atmel SAMD/L Chip Selection"
default ARCH_CHIP_SAMD20J18 if ARCH_CHIP_SAMD
default ARCH_CHIP_SAMD21J18 if ARCH_CHIP_SAML
depends on ARCH_CHIP_SAMD || ARCH_CHIP_SAML
config ARCH_CHIP_SAMD20E14
bool "SAMD20E14"
depends on ARCH_CHIP_SAMD
select ARCH_FAMILY_SAMD20
select ARCH_FAMILY_SAMD20E
---help---
Flash 16KB SRAM 2KB
config ARCH_CHIP_SAMD20E15
bool "SAMD20E15"
depends on ARCH_CHIP_SAMD
select ARCH_FAMILY_SAMD20
select ARCH_FAMILY_SAMD20E
---help---
Flash 32KB SRAM 4KB
config ARCH_CHIP_SAMD20E16
bool "SAMD20E16"
depends on ARCH_CHIP_SAMD
select ARCH_FAMILY_SAMD20
select ARCH_FAMILY_SAMD20E
---help---
Flash 64KB SRAM 8KB
config ARCH_CHIP_SAMD20E17
bool "SAMD20E17"
depends on ARCH_CHIP_SAMD
select ARCH_FAMILY_SAMD20
select ARCH_FAMILY_SAMD20E
---help---
Flash 128KB SRAM 16KB
config ARCH_CHIP_SAMD20E18
bool "SAMD20E18"
depends on ARCH_CHIP_SAMD
select ARCH_FAMILY_SAMD20
select ARCH_FAMILY_SAMD20E
---help---
Flash 256KB SRAM 32KB
config ARCH_CHIP_SAMD20G14
bool "SAMD20G14"
depends on ARCH_CHIP_SAMD
select ARCH_FAMILY_SAMD20
select ARCH_FAMILY_SAMD20G
---help---
Flash 16KB SRAM 2KB
config ARCH_CHIP_SAMD20G15
bool "SAMD20G15"
depends on ARCH_CHIP_SAMD
select ARCH_FAMILY_SAMD20
select ARCH_FAMILY_SAMD20G
---help---
Flash 32KB SRAM 4KB
config ARCH_CHIP_SAMD20G16
bool "SAMD20G16"
depends on ARCH_CHIP_SAMD
select ARCH_FAMILY_SAMD20
select ARCH_FAMILY_SAMD20G
---help---
Flash 64KB SRAM 8KB
config ARCH_CHIP_SAMD20G17
bool "SAMD20G17"
depends on ARCH_CHIP_SAMD
select ARCH_FAMILY_SAMD20
select ARCH_FAMILY_SAMD20G
---help---
Flash 128KB SRAM 16KB
config ARCH_CHIP_SAMD20G18
bool "SAMD20G18"
depends on ARCH_CHIP_SAMD
select ARCH_FAMILY_SAMD20
select ARCH_FAMILY_SAMD20G
---help---
Flash 256KB SRAM 32KB
config ARCH_CHIP_SAMD20J14
bool "SAMD20J14"
depends on ARCH_CHIP_SAMD
select ARCH_FAMILY_SAMD20
select ARCH_FAMILY_SAMD20J
---help---
Flash 16KB SRAM 2KB
config ARCH_CHIP_SAMD20J15
bool "SAMD20J15"
depends on ARCH_CHIP_SAMD
select ARCH_FAMILY_SAMD20
select ARCH_FAMILY_SAMD20J
---help---
Flash 32KB SRAM 4KB
config ARCH_CHIP_SAMD20J16
bool "SAMD20J16"
depends on ARCH_CHIP_SAMD
select ARCH_FAMILY_SAMD20
select ARCH_FAMILY_SAMD20J
---help---
Flash 64KB SRAM 8KB
config ARCH_CHIP_SAMD20J17
bool "SAMD20J17"
depends on ARCH_CHIP_SAMD
select ARCH_FAMILY_SAMD20
select ARCH_FAMILY_SAMD20J
---help---
Flash 128KB SRAM 16KB
config ARCH_CHIP_SAMD20J18
bool "SAMD20J18"
depends on ARCH_CHIP_SAMD
select ARCH_FAMILY_SAMD20
select ARCH_FAMILY_SAMD20J
---help---
Flash 256KB SRAM 32KB
config ARCH_CHIP_SAMD21E15A
bool "SAMD21E15A"
depends on ARCH_CHIP_SAMD
select ARCH_FAMILY_SAMD21
select ARCH_FAMILY_SAMD21E
---help---
Flash 32KB SRAM 4KB
config ARCH_CHIP_SAMD21E15B
bool "SAMD21E15B"
depends on ARCH_CHIP_SAMD
select ARCH_FAMILY_SAMD21
select ARCH_FAMILY_SAMD21E
---help---
Flash 32KB SRAM 4KB
config ARCH_CHIP_SAMD21E16A
bool "SAMD21E16A"
depends on ARCH_CHIP_SAMD
select ARCH_FAMILY_SAMD21
select ARCH_FAMILY_SAMD21E
---help---
Flash 64KB SRAM 8KB
config ARCH_CHIP_SAMD21E16B
bool "SAMD21E16B"
depends on ARCH_CHIP_SAMD
select ARCH_FAMILY_SAMD21
select ARCH_FAMILY_SAMD21E
---help---
Flash 64KB SRAM 8KB
config ARCH_CHIP_SAMD21E17A
bool "SAMD21E17A"
depends on ARCH_CHIP_SAMD
select ARCH_FAMILY_SAMD21
select ARCH_FAMILY_SAMD21E
---help---
Flash 128KB SRAM 16KB
config ARCH_CHIP_SAMD21E18A
bool "SAMD21E18A"
depends on ARCH_CHIP_SAMD
select ARCH_FAMILY_SAMD21
select ARCH_FAMILY_SAMD21E
---help---
Flash 256KB SRAM 32KB
config ARCH_CHIP_SAMD21G15A
bool "SAMD21G15A"
depends on ARCH_CHIP_SAMD
select ARCH_FAMILY_SAMD21
select ARCH_FAMILY_SAMD21G
---help---
Flash 32KB SRAM 4KB
config ARCH_CHIP_SAMD21G15B
bool "SAMD21G15B"
depends on ARCH_CHIP_SAMD
select ARCH_FAMILY_SAMD21
select ARCH_FAMILY_SAMD21G
---help---
Flash 32KB SRAM 4KB
config ARCH_CHIP_SAMD21G16A
bool "SAMD21G16A"
depends on ARCH_CHIP_SAMD
select ARCH_FAMILY_SAMD21
select ARCH_FAMILY_SAMD21G
---help---
Flash 64KB SRAM 8KB
config ARCH_CHIP_SAMD21G16B
bool "SAMD21G16B"
depends on ARCH_CHIP_SAMD
select ARCH_FAMILY_SAMD21
select ARCH_FAMILY_SAMD21E
---help---
Flash 64KB SRAM 8KB
config ARCH_CHIP_SAMD21G17A
bool "SAMD21G17A"
depends on ARCH_CHIP_SAMD
select ARCH_FAMILY_SAMD21
select ARCH_FAMILY_SAMD21G
---help---
Flash 128KB SRAM 16KB
config ARCH_CHIP_SAMD21G18A
bool "SAMD21G18A"
depends on ARCH_CHIP_SAMD
select ARCH_FAMILY_SAMD21
select ARCH_FAMILY_SAMD21G
---help---
Flash 256KB SRAM 32KB
config ARCH_CHIP_SAMD21J15A
bool "SAMD21J15A"
depends on ARCH_CHIP_SAMD
select ARCH_FAMILY_SAMD21
select ARCH_FAMILY_SAMD21J
---help---
Flash 32KB SRAM 4KB
config ARCH_CHIP_SAMD21J15B
bool "SAMD21J15B"
depends on ARCH_CHIP_SAMD
select ARCH_FAMILY_SAMD21
select ARCH_FAMILY_SAMD21J
---help---
Flash 32KB SRAM 4KB
config ARCH_CHIP_SAMD21J16A
bool "SAMD21J16A"
depends on ARCH_CHIP_SAMD
select ARCH_FAMILY_SAMD21
select ARCH_FAMILY_SAMD21J
---help---
Flash 64KB SRAM 8KB
config ARCH_CHIP_SAMD21J16B
bool "SAMD21J16B"
depends on ARCH_CHIP_SAMD
select ARCH_FAMILY_SAMD21
select ARCH_FAMILY_SAMD21J
---help---
Flash 64KB SRAM 8KB
config ARCH_CHIP_SAMD21J17A
bool "SAMD21J17A"
depends on ARCH_CHIP_SAMD
select ARCH_FAMILY_SAMD21
select ARCH_FAMILY_SAMD21E
---help---
Flash 128KB SRAM 16KB
config ARCH_CHIP_SAMD21J18A
bool "SAMD21J18A"
depends on ARCH_CHIP_SAMD
select ARCH_FAMILY_SAMD21
select ARCH_FAMILY_SAMD21J
---help---
Flash 256KB SRAM 32KB
config ARCH_CHIP_SAML21E15
bool "SAML21E15"
depends on ARCH_CHIP_SAML
select ARCH_FAMILY_SAML21
select ARCH_FAMILY_SAML21E
---help---
Flash 32KB SRAM 4KB
config ARCH_CHIP_SAML21E16
bool "SAML21E16"
depends on ARCH_CHIP_SAML
select ARCH_FAMILY_SAML21
select ARCH_FAMILY_SAML21E
---help---
Flash 64KB SRAM 8KB
config ARCH_CHIP_SAML21E17
bool "SAML21E17"
depends on ARCH_CHIP_SAML
select ARCH_FAMILY_SAML21
select ARCH_FAMILY_SAML21E
---help---
Flash 128KB SRAM 16KB
config ARCH_CHIP_SAML21E18
bool "SAML21E18"
depends on ARCH_CHIP_SAML
select ARCH_FAMILY_SAML21
select ARCH_FAMILY_SAML21E
---help---
Flash 256KB SRAM 32KB
config ARCH_CHIP_SAML21G16
bool "SAML21G16"
depends on ARCH_CHIP_SAML
select ARCH_FAMILY_SAML21
select ARCH_FAMILY_SAML21G
---help---
Flash 64KB SRAM 4KB
config ARCH_CHIP_SAML21G17
bool "SAML21G17"
depends on ARCH_CHIP_SAML
select ARCH_FAMILY_SAML21
select ARCH_FAMILY_SAML21G
---help---
Flash 128KB SRAM 16KB
config ARCH_CHIP_SAML21G18
bool "SAML21G18"
depends on ARCH_CHIP_SAML
select ARCH_FAMILY_SAML21
select ARCH_FAMILY_SAML21G
---help---
Flash 256KB SRAM 32KB
config ARCH_CHIP_SAML21J16
bool "SAML21J16"
depends on ARCH_CHIP_SAML
select ARCH_FAMILY_SAML21
select ARCH_FAMILY_SAML21J
---help---
Flash 64KB SRAM 4KB
config ARCH_CHIP_SAML21J17
bool "SAML21J17"
depends on ARCH_CHIP_SAML
select ARCH_FAMILY_SAML21
select ARCH_FAMILY_SAML21J
---help---
Flash 128KB SRAM 16KB
config ARCH_CHIP_SAML21J18
bool "SAML21J18"
depends on ARCH_CHIP_SAML
select ARCH_FAMILY_SAML21
select ARCH_FAMILY_SAML21J
---help---
Flash 256KB SRAM 32KB
endchoice
config ARCH_FAMILY_SAMD20
bool
default n
select SAMDL_HAVE_TC2
select SAMDL_HAVE_TC3
select SAMDL_HAVE_TC5
config ARCH_FAMILY_SAMD20E
bool
default n
config ARCH_FAMILY_SAMD20G
bool
default n
select SAMDL_HAVE_SERCOM4
select SAMDL_HAVE_SERCOM5
config ARCH_FAMILY_SAMD20J
bool
default n
select SAMDL_HAVE_SERCOM4
select SAMDL_HAVE_SERCOM5
select SAMDL_HAVE_TC6
select SAMDL_HAVE_TC7
config ARCH_FAMILY_SAMD21
bool
default n
select SAMDL_HAVE_DMAC
config ARCH_FAMILY_SAMD21E
bool
default n
config ARCH_FAMILY_SAMD21G
bool
default n
select SAMDL_HAVE_SERCOM4
select SAMDL_HAVE_SERCOM5
config ARCH_FAMILY_SAMD21J
bool
default n
select SAMDL_HAVE_SERCOM4
select SAMDL_HAVE_SERCOM5
select SAMDL_HAVE_TC2
select SAMDL_HAVE_TC3
select SAMDL_HAVE_TC5
config ARCH_FAMILY_SAML21
bool
default n
select SAMDL_HAVE_DMAC
config ARCH_FAMILY_SAML21E
bool
default n
config ARCH_FAMILY_SAML21G
bool
default n
select SAMDL_HAVE_SERCOM4
select SAMDL_HAVE_SERCOM5
config ARCH_FAMILY_SAML21J
bool
default n
select SAMDL_HAVE_SERCOM4
select SAMDL_HAVE_SERCOM5
select SAMDL_HAVE_TC2
select SAMDL_HAVE_TC3
select SAMDL_HAVE_TC5
menu "SAMD/L Peripheral Support"
config SAMDL_HAVE_DMAC
bool
default n
config SAMDL_HAVE_SERCOM4
bool
default n
config SAMDL_HAVE_SERCOM5
bool
default n
config SAMDL_HAVE_TC5
bool
default n
config SAMDL_HAVE_TC2
bool
default n
config SAMDL_HAVE_TC3
bool
default n
config SAMDL_HAVE_TC6
bool
default n
config SAMDL_HAVE_TC7
bool
default n
config SAMDL_AC
bool "Analog Comparator"
default n
config SAMDL_ADC
bool "Analog-to-Digital Converter"
default n
config SAMDL_DAC
bool "Digital-to-Analog Converter"
default n
config SAMDL_DMAC
bool "DMA Controller"
default n
select ARCH_DMA
depends on SAMDL_HAVE_DMAC && EXPERIMENTAL
config SAMDL_EVSYS
bool "Event System"
default n
config SAMDL_NVMCTRL
bool "Non-Volatile Memory Controller"
default n
config SAMDL_PTC
bool "Peripheral Touch Controller"
default n
config SAMDL_RTC
bool "Real Time Counter"
default n
config SAMDL_SERCOM0
bool "Serial Communication Interface 0"
default n
config SAMDL_SERCOM1
bool "Serial Communication Interface 1"
default n
config SAMDL_SERCOM2
bool "Serial Communication Interface 2"
default n
config SAMDL_SERCOM3
bool "Serial Communication Interface 3"
default n
config SAMDL_SERCOM4
bool "Serial Communication Interface 4"
default n
depends on SAMDL_HAVE_SERCOM4
config SAMDL_SERCOM5
bool "Serial Communication Interface 5"
default n
depends on SAMDL_HAVE_SERCOM5
config SAMDL_TC0
bool "Timer/Counter 0"
default n
config SAMDL_TC1
bool "Timer/Counter 1"
default n
config SAMDL_TC2
bool "Timer/Counter 2"
default n
depends on SAMDL_HAVE_TC2
config SAMDL_TC3
bool "Timer/Counter 3"
default n
depends on SAMDL_HAVE_TC3
config SAMDL_TC4
bool "Timer/Counter 4"
default n
config SAMDL_TC5
bool "Timer/Counter 5"
default n
depends on SAMDL_HAVE_TC5
config SAMDL_TC6
bool "Timer/Counter 6"
default n
depends on SAMDL_HAVE_TC6
config SAMDL_TC7
bool "Timer/Counter 7"
default n
depends on SAMDL_HAVE_TC7
config SAMDL_WDT
bool "Watchdog Timer"
default n
endmenu
choice
prompt "SERCOM0 mode"
default SAMDL_SERCOM0_ISUSART
depends on SAMDL_SERCOM0
config SAMDL_SERCOM0_ISI2C
bool "I2C"
select I2C
config SAMDL_SERCOM0_ISSPI
bool "SPI"
select SAMDL_HAVE_SPI
config SAMDL_SERCOM0_ISUSART
bool "USART"
select ARCH_HAVE_USART0
select USART0_ISUART
endchoice
config SAMDL_DMAC_NDESC
int "Number of additional DMA Descriptors"
default 0
depends on SAMDL_DMAC
---help---
This provides the number of additional DMA descriptors that can be
use to support multi-linked DMA transfers. A minimum of 16
descriptors will always be allocated (16 for the base descriptor which
overlap the writeback descriptors). If this value is set to zero,
then only single block DMA transfers can be supported.
Each additional DMA descriptor will require 16-bytes for LPRAM
memory.
choice
prompt "SERCOM1 mode"
default SAMDL_SERCOM1_ISUSART
depends on SAMDL_SERCOM1
config SAMDL_SERCOM1_ISI2C
bool "I2C"
select I2C
config SAMDL_SERCOM1_ISSPI
bool "SPI"
select SAMDL_HAVE_SPI
config SAMDL_SERCOM1_ISUSART
bool "USART"
select ARCH_HAVE_USART1
select USART1_ISUART
endchoice
choice
prompt "SERCOM2 mode"
default SAMDL_SERCOM2_ISUSART
depends on SAMDL_SERCOM2
config SAMDL_SERCOM2_ISI2C
bool "I2C"
select I2C
config SAMDL_SERCOM2_ISSPI
bool "SPI"
select SAMDL_HAVE_SPI
config SAMDL_SERCOM2_ISUSART
bool "USART"
select ARCH_HAVE_USART2
select USART2_ISUART
endchoice
choice
prompt "SERCOM3 mode"
default SAMDL_SERCOM3_ISUSART
depends on SAMDL_SERCOM3
config SAMDL_SERCOM3_ISI2C
bool "I2C"
select I2C
config SAMDL_SERCOM3_ISSPI
bool "SPI"
select SAMDL_HAVE_SPI
config SAMDL_SERCOM3_ISUSART
bool "USART"
select ARCH_HAVE_USART3
select USART3_ISUART
endchoice
choice
prompt "SERCOM4 mode"
default SAMDL_SERCOM4_ISUSART
depends on SAMDL_SERCOM4
config SAMDL_SERCOM4_ISI2C
bool "I2C"
select I2C
config SAMDL_SERCOM4_ISSPI
bool "SPI"
select SAMDL_HAVE_SPI
config SAMDL_SERCOM4_ISUSART
bool "USART"
select ARCH_HAVE_USART4
select USART4_ISUART
endchoice
choice
prompt "SERCOM5 mode"
default SAMDL_SERCOM5_ISUSART
depends on SAMDL_SERCOM5
config SAMDL_SERCOM5_ISI2C
bool "I2C"
select I2C
config SAMDL_SERCOM5_ISSPI
bool "SPI"
select SAMDL_HAVE_SPI
config SAMDL_SERCOM5_ISUSART
bool "USART"
select ARCH_HAVE_USART5
select USART5_ISUART
endchoice
config SAMDL_HAVE_SPI
bool
select SPI
if SAMDL_HAVE_SPI
config SAMDL_SPI_REGDEBUG
bool "SPI register-Level Debug"
default n
depends on DEBUG_SPI
---help---
Enable very low-level register access debug. Depends on DEBUG_SPI.
endif # SAMDL_HAVE_SPI