nuttx/arch/arm/src/lpc17xx/Kconfig

778 lines
15 KiB
Plaintext
Raw Normal View History

#
# For a description of the syntax of this configuration file,
# see misc/tools/kconfig-language.txt.
#
comment "LPC17xx Configuration Options"
choice
prompt "NXP LPC17XX Chip Selection"
default ARCH_CHIP_LPC1768
depends on ARCH_CHIP_LPC17XX
config ARCH_CHIP_LPC1751
bool "LPC1751"
select ARCH_FAMILY_LPC175X
config ARCH_CHIP_LPC1752
bool "LPC1752"
select ARCH_FAMILY_LPC175X
config ARCH_CHIP_LPC1754
bool "LPC1754"
select ARCH_FAMILY_LPC175X
config ARCH_CHIP_LPC1756
bool "LPC1756"
select ARCH_FAMILY_LPC175X
config ARCH_CHIP_LPC1758
bool "LPC1758"
select ARCH_FAMILY_LPC175X
config ARCH_CHIP_LPC1759
bool "LPC1759"
select ARCH_FAMILY_LPC175X
config ARCH_CHIP_LPC1764
bool "LPC1764"
select ARCH_FAMILY_LPC176X
config ARCH_CHIP_LPC1765
bool "LPC1765"
select ARCH_FAMILY_LPC176X
config ARCH_CHIP_LPC1766
bool "LPC1766"
select ARCH_FAMILY_LPC176X
config ARCH_CHIP_LPC1767
bool "LPC1767"
select ARCH_FAMILY_LPC176X
config ARCH_CHIP_LPC1768
bool "LPC1768"
select ARCH_FAMILY_LPC176X
config ARCH_CHIP_LPC1769
bool "LPC1769"
select ARCH_FAMILY_LPC176X
config ARCH_CHIP_LPC1773
bool "LPC1773"
select ARCH_FAMILY_LPC177X
select ARCH_HAVE_SPIFI
config ARCH_CHIP_LPC1774
bool "LPC1774"
select ARCH_FAMILY_LPC177X
config ARCH_CHIP_LPC1776
bool "LPC1776"
select ARCH_FAMILY_LPC177X
config ARCH_CHIP_LPC1777
bool "LPC1777"
select ARCH_FAMILY_LPC177X
config ARCH_CHIP_LPC1778
bool "LPC1778"
select ARCH_FAMILY_LPC177X
config ARCH_CHIP_LPC1785
bool "LPC1785"
select ARCH_FAMILY_LPC178X
config ARCH_CHIP_LPC1786
bool "LPC1786"
select ARCH_FAMILY_LPC178X
config ARCH_CHIP_LPC1787
bool "LPC1787"
select ARCH_FAMILY_LPC178X
config ARCH_CHIP_LPC1788
bool "LPC1788"
select ARCH_FAMILY_LPC178X
endchoice
config ARCH_FAMILY_LPC175X
bool
config ARCH_FAMILY_LPC176X
bool
config ARCH_FAMILY_LPC177X
bool
select ARCH_HAVE_EXTNAND
select ARCH_HAVE_EXTSRAM0
select ARCH_HAVE_EXTDRAM
select ARCH_HAVE_EXTNOR
select ARCH_HAVE_SDIO
config ARCH_FAMILY_LPC178X
bool
select ARCH_HAVE_EXTNAND
select ARCH_HAVE_EXTSRAM0
select ARCH_HAVE_EXTDRAM
select ARCH_HAVE_EXTNOR
select ARCH_HAVE_SDIO
config ARCH_HAVE_SPIFI
bool
config ARCH_HAVE_SDIO
bool
menu "LPC17xx Peripheral Support"
config LPC17_MAINOSC
bool "Main oscillator"
default y
config LPC17_PLL0
bool "PLL0"
default y
config LPC17_PLL1
bool "PLL1"
default y
config LPC17_EMC
bool "EMC"
default y
depends on ARCH_FAMILY_LPC178X
config LPC17_ETHERNET
bool "Ethernet"
select NET
select ARCH_HAVE_PHY
default n
config LPC17_LCD
bool "LCD controller"
default n
depends on ARCH_FAMILY_LPC177X || ARCH_FAMILY_LPC178X
config LPC17_USBHOST
bool "USB host"
select USBHOST
default n
config LPC17_USBDEV
bool "USB Device"
select USBDEV
default n
config LPC17_USBOTG
bool "USB OTG"
default n
depends on LPC17_USBHOST && LPC17_USBDEV
config LPC17_SDCARD
bool "SD Card Interface"
depends on ARCH_HAVE_SDIO
default n
config LPC17_UART0
bool "UART0"
select ARCH_HAVE_UART0
default n
config LPC17_UART1
bool "UART1"
select ARCH_HAVE_UART1
default n
config LPC17_UART2
bool "UART2"
select ARCH_HAVE_UART2
default n
config LPC17_UART3
bool "UART3"
select ARCH_HAVE_UART3
default n
config LPC17_UART4
bool "UART4"
select ARCH_HAVE_UART4
default n
config LPC17_CAN1
bool "CAN1"
select ARCH_HAVE_UART4
default n
config LPC17_CAN2
bool "CAN2"
default n
config LPC17_SPI
bool "SPI"
default n
depends on ARCH_FAMILY_LPC175X || ARCH_FAMILY_LPC176X
config LPC17_SSP0
bool "SSP0"
default n
config LPC17_SSP1
bool "SSP1"
default n
config LPC17_SSP2
bool "SSP1"
default n
depends on ARCH_FAMILY_LPC177X || ARCH_FAMILY_LPC178X
config LPC17_SPIFI
bool "SPIFI Interface"
depends on ARCH_HAVE_SPIFI
default n
config LPC17_I2C0
bool "I2C0"
default n
config LPC17_I2C1
bool "I2C1"
default n
config LPC17_I2C2
bool "I2C2"
default n
config LPC17_I2S
bool "I2S"
default n
config LPC17_TMR0
bool "Timer 0"
default n
config LPC17_TMR1
bool "Timer 1"
default n
config LPC17_TMR2
bool "Timer 2"
default n
config LPC17_TMR3
bool "Timer 3"
default n
config LPC17_RIT
bool "RIT"
default n
config LPC17_PWM0
bool "PWM0"
default n
config LPC17_PWM1
bool "PWM1"
default n
depends on ARCH_FAMILY_LPC177X || ARCH_FAMILY_LPC178X
config LPC17_MCPWM
bool "MCPWM"
default n
depends on ARCH_FAMILY_LPC175X || ARCH_FAMILY_LPC176X
config LPC17_QEI
bool "QEI"
default n
config LPC17_RTC
bool "RTC"
default n
config LPC17_RTCEV
bool "RTC event monitor"
default n
depends on LPC17_RTC
config LPC17_WDT
bool "WDT"
default n
config LPC17_ADC
bool "ADC"
default n
config LPC17_DAC
bool "DAC"
default n
config LPC17_GPDMA
bool "GPDMA"
default n
config LPC17_CRC
bool "CRC engine"
default n
depends on ARCH_FAMILY_LPC177X || ARCH_FAMILY_LPC178X
config LPC17_FLASH
bool "FLASH"
default n
config LPC17_EEPROM
bool "EEPROM"
default n
depends on ARCH_FAMILY_LPC177X || ARCH_FAMILY_LPC178X
endmenu
menu "Serial driver options"
config SERIAL_TERMIOS
bool "Serial driver TERMIOS supported"
depends on LPC17_UART0 || LPC17_UART1 || LPC17_UART2 || LPC17_UART3
default n
---help---
Serial driver supports termios.h interfaces (tcsetattr, tcflush, etc.).
If this is not defined, then the terminal settings (baud, parity, etc).
are not configurable at runtime; serial streams cannot be flushed, etc..
config UART0_FLOWCONTROL
bool "UART0 flow control"
depends on LPC17_UART0
default n
---help---
Enable UART0 flow control
config UART1_FLOWCONTROL
bool "UART1 flow control"
depends on LPC17_UART1
default n
---help---
Enable UART1 flow control
config UART1_RINGINDICATOR
bool "UART1 ring indicator"
depends on LPC17_UART1
default n
---help---
Enable UART1 ring indicator
config UART2_FLOWCONTROL
bool "UART0 flow control"
depends on LPC17_UART2
default n
---help---
Enable UART2 flow control
config UART3_FLOWCONTROL
bool "UART3 flow control"
depends on LPC17_UART3
default n
---help---
Enable UART3 flow control
endmenu
menu "ADC driver options"
config ADC0_AVERAGE
int "ADC0 average"
depends on LPC17_ADC
default 200
config ADC0_MASK
int "ADC0 mask"
depends on LPC17_ADC
default 1
config ADC0_SPS
int "ADC0 SPS"
depends on LPC17_ADC
default 1000
config ADC_CHANLIST
bool "Use ADC channel list"
default n
---help--
The errata that states: "A/D Global Data register should not be used
with burst mode or hardware triggering". If this option is selected,
then the ADC driver will grab from the individual channel registers
rather than from the global data register as this is the stated
workaround in the errata.
The ADC interrupt will trigger on conversion complete on the last
channel listed in the array g_adc_chanlist[] (as opposed to
triggering interrupt from the global DONE flag).
If this option is enabled, then the platform specific code must do
two things: (1) define ADC_NCHANNELS in the configuration file and
(2) provide an array g_adc_chanlist[] with the channel numbers
matching the ADC0_MASK within the board-specific library.
config ADC_NCHANNELS
int "ADC0 number of channels"
depends on LPC17_ADC
default 0
---help--
If CONFIG_ADC_CHANLIST is enabled, then the platform specific code
must do two things: (1) define ADC_NCHANNELS in the configuration
file and (2) provide an array g_adc_chanlist[] with the channel
numbers matching the ADC0_MASK within the board-specific library.
endmenu
menu "CAN driver options"
config CAN_EXTID
bool "CAN extended IDs"
depends on LPC17_CAN1 || LPC17_CAN2
default n
---help---
Enables support for the 29-bit extended ID. Default Standard 11-bit IDs.
config CAN1_BAUD
int "CAN1 BAUD"
depends on LPC17_CAN1
---help---
CAN1 BAUD rate. Required if LPC17_CAN1 is defined.
config CAN2_BAUD
int "CAN2 BAUD"
depends on LPC17_CAN2
---help---
CAN2 BAUD rate. Required if LPC17_CAN2 is defined.
config CAN1_DIVISOR
int "CAN1 CCLK divisor"
depends on LPC17_CAN1
default 4
---help---
CAN1 is clocked at CCLK divided by this number. (the CCLK frequency is divided
by this number to get the CAN clock). Options = {1,2,4,6}. Default: 4.
config CAN2_DIVISOR
int "CAN2 CCLK divisor"
depends on LPC17_CAN2
default 4
---help---
CAN2 is clocked at CCLK divided by this number. (the CCLK frequency is divided
by this number to get the CAN clock). Options = {1,2,4,6}. Default: 4.
config CAN_TSEG1
int "TSEG1 quanta"
depends on LPC17_CAN1 || LPC17_CAN2
default 6
---help---
The number of CAN time quanta in segment 1. Default: 6
config CAN_TSEG2
int "TSEG2 quanta"
depends on LPC17_CAN1 || LPC17_CAN2
default 4
---help---
The number of CAN time quanta in segment 2. Default: 7
config CAN_SAM
bool "CAN sampling"
depends on LPC17_CAN1 || LPC17_CAN2
default n
---help---
The bus is sampled 3 times (recommended for low to medium speed buses to spikes on the bus-line).
config CAN_LOOPBACK
bool "CAN looopback mode"
depends on LPC17_CAN1 || LPC17_CAN2
default n
---help---
Enable CAN loopback mode
config CAN_REGDEBUG
bool "Register level debug"
depends on LPC17_CAN1 || LPC17_CAN2
default n
---help---
Output detailed register-level CAN debug information. Requires also DEBUG and DEBUG_CAN.
endmenu
config GPIO_IRQ
bool "GPIO interrupt support"
default n
---help---
Enable support for GPIO interrupts
menu "I2C driver options"
config I2C0_FREQ
int "I2C0 frequency"
depends on LPC17_I2C0
default 100000
config I2C1_FREQ
int "I2C1 frequency"
depends on LPC17_I2C1
default 100000
config I2C2_FREQ
int "I2C2 frequency"
depends on LPC17_I2C2
default 100000
endmenu
menu "SDIO Configuration"
depends on LPC17_SDCARD
config SDIO_DMA
bool "Support DMA data transfers"
default y if LPC17_GPDMA
depends on LPC17_GPDMA
---help---
Support DMA data transfers.
Enable SD card DMA data transfers. This is a marginally optional.
For most usages, SD accesses will cause data overruns if used without
DMA. Requires LPC17_SDCARD and config LPC17_GPDMA.
config SDIO_DMAPRIO
hex "SDIO DMA priority"
default 0x0
depends on LPC17_GPDMA
---help---
Select SDIO DMA prority.
config SDIO_WIDTH_D1_ONLY
bool "Use D1 only"
default n
---help---
Select 1-bit transfer mode. This may be selected to force the driver
operate with only a single data line (the default is to use all
4 SD data lines).Default: 4-bit transfer mode.
endmenu
menu "Ethernet driver options"
config PHY_AUTONEG
bool "Autonegiation"
depends on LPC17_ETHERNET
---help---
Enable auto-negotion
config PHY_SPEED100
bool "100Mbit/Sec"
depends on LPC17_ETHERNET && !PHY_AUTONEG
---help---
Select 100Mbit vs. 10Mbit speed.
config PHY_FDUPLEX
bool "Full duplex"
depends on LPC17_ETHERNET && !PHY_AUTONEG
---help---
Select full (vs. half) duplex
config NET_EMACRAM_SIZE
int "EMAC RAM Size"
depends on LPC17_ETHERNET
default 16384
---help---
Size of EMAC RAM. Default: 16384 bytes
config NET_NTXDESC
int "Number of Tx descriptors"
depends on LPC17_ETHERNET
default 18
---help---
Configured number of Tx descriptors. Default: 18
config NET_NRXDESC
int "Number of Rx descriptors"
depends on LPC17_ETHERNET
default 18
---help---
Configured number of Rx descriptors. Default: 18
config NET_PRIORITY
int "Ethernet interrupt priority"
depends on LPC17_ETHERNET
default 0
---help---
Ethernet interrupt priority. The is default is the higest priority (0).
config NET_WOL
bool "Wake-up on LAN"
depends on LPC17_ETHERNET
default n
---help---
Enable Wake-up on Lan (not fully implemented).
config NET_REGDEBUG
bool "Ethernet register-level debug"
depends on LPC17_ETHERNET && DEBUG
default n
---help---
Enable low level register debug. Also needs DEBUG.
config NET_DUMPPACKET
bool "Enable packet dumping"
depends on LPC17_ETHERNET && DEBUG
default n
---help---
Dump all received and transmitted packets. Also needs DEBUG.
config NET_HASH
bool "Hashing"
depends on LPC17_ETHERNET
default n
---help---
Enable receipt of near-perfect match frames.
config NET_MULTICAST
bool "Multicast"
depends on LPC17_ETHERNET
default y if NET_IGMP
default n if !NET_IGMP
---help---
Enable receipt of multicast (and unicast) frames. Automatically set
if NET_IGMP is selected.
endmenu
menu "USB device driver options"
config LPC17_USBDEV_EP0_MAXSIZE
int "EP0 Max packet size"
depends on LPC17_USBDEV
default 64
---help---
Endpoint 0 maximum packet size. Default: 64
config LPC17_USBDEV_FRAME_INTERRUPT
bool "USB frame interrupt"
depends on LPC17_USBDEV
default n
---help---
Handle USB Start-Of-Frame events. Enable reading SOF from interrupt
handler vs. simply reading on demand. Probably a bad idea... Unless
there is some issue with sampling the SOF from hardware asynchronously.
config LPC17_USBDEV_EPFAST_INTERRUPT
bool "EP fast interrupt handling"
depends on LPC17_USBDEV
default n
---help---
Enable high priority interrupts. I have no idea why you might want to do that
config LPC17_USBDEV_NDMADESCRIPTORS
int "Number of DMA descriptors"
depends on LPC17_USBDEV
default 8
---help---
Number of DMA descriptors to allocate in SRAM. Default: 8
config LPC17_USBDEV_DMA
bool "Enable USB device DMA"
depends on LPC17_USBDEV
default n
---help---
Enable lpc17xx-specific DMA support
config LPC17_USBDEV_NOVBUS
bool "Disable VBUS support"
depends on LPC17_USBDEV
default n
---help---
Define if the hardware implementation does not support the VBUS signal
config LPC17_USBDEV_NOLED
bool "Disable USB device LCD support"
depends on LPC17_USBDEV
default n
---help---
Define if the hardware implementation does not support the LED output
config LPC17_USBDEV_REGDEBUG
bool "Register level debug"
depends on LPC17_USBDEV && DEBUG
default n
---help---
Output detailed register-level USB device debug information. Requires also DEBUG.
endmenu
menu "USB host driver options"
config USBHOST_OHCIRAM_SIZE
int "OHCI RAM Size"
depends on LPC17_USBHOST
default 16384
---help---
Total size of OHCI RAM (in AHB SRAM Bank 1). Default: 16384
config USBHOST_NEDS
int "Number of Endpoint Descriptors"
depends on LPC17_USBHOST
default 2
---help---
Number of endpoint descriptors. Default: 2
config USBHOST_NTDS
int "Number of transfer descriptors"
depends on LPC17_USBHOST
default 3
---help---
Number of transfer descriptors. Default: 3
config USBHOST_TDBUFFERS
int "Number of descriptor buffers"
depends on LPC17_USBHOST
default 2
---help---
Number of transfer descriptor buffers. Default: 2
config USBHOST_TDBUFSIZE
int "Descriptor buffer size"
depends on LPC17_USBHOST
default 128
---help---
Size of one transfer descriptor buffer. Default 128
config USBHOST_IOBUFSIZE
int "I/O buffer size"
depends on LPC17_USBHOST
default 512
---help---
Size of one end-user I/O buffer. This can be zero if the application
can guarantee that all end-user I/O buffers reside in AHB SRAM.
config USBHOST_BULK_DISABLE
bool "Disable bulk EPs"
depends on LPC17_USBHOST
default n
---help---
Disable support for bulk endpoints.
config USBHOST_INT_DISABLE
bool "Disable interupt EPs"
depends on LPC17_USBHOST
default n
---help---
Disable support for interrupt endpoints.
config USBHOST_ISOC_DISABLE
bool "Disable isochronous EPs"
depends on LPC17_USBHOST
default n
---help---
Disable support for isochronous endpoints.
config LPC17_USBHOST_REGDEBUG
bool "Register level debug"
depends on LPC17_USBHOST && DEBUG
default n
---help---
Output detailed register-level USB host debug information. Requires also DEBUG.
endmenu