summaryrefslogtreecommitdiffstats
path: root/nuttx/arch/arm/src
diff options
context:
space:
mode:
Diffstat (limited to 'nuttx/arch/arm/src')
-rw-r--r--nuttx/arch/arm/src/lpc17xx/Kconfig449
-rw-r--r--nuttx/arch/arm/src/lpc43xx/Kconfig44
-rw-r--r--nuttx/arch/arm/src/stm32/Kconfig100
3 files changed, 452 insertions, 141 deletions
diff --git a/nuttx/arch/arm/src/lpc17xx/Kconfig b/nuttx/arch/arm/src/lpc17xx/Kconfig
index ae2bf31307..44e34f9f4c 100644
--- a/nuttx/arch/arm/src/lpc17xx/Kconfig
+++ b/nuttx/arch/arm/src/lpc17xx/Kconfig
@@ -2,3 +2,452 @@
# For a description of the syntax of this configuration file,
# see misc/tools/kconfig-language.txt.
#
+
+choice
+ prompt "NXP LPC17XX Chip Selection"
+ default ARCH_CHIP_LPC1768
+ depends on ARCH_CHIP_LPC17XX
+
+config ARCH_CHIP_LPC1751
+ bool "LPC1751"
+
+config ARCH_CHIP_LPC1752
+ bool "LPC1752"
+
+config ARCH_CHIP_LPC1754
+ bool "LPC1754"
+
+config ARCH_CHIP_LPC1756
+ bool "LPC1756"
+
+config ARCH_CHIP_LPC1758
+ bool "LPC1758"
+
+config ARCH_CHIP_LPC1759
+ bool "LPC1759"
+
+config ARCH_CHIP_LPC1764
+ bool "LPC1764"
+
+config ARCH_CHIP_LPC1765
+ bool "LPC1765"
+
+config ARCH_CHIP_LPC1766
+ bool "LPC1766"
+
+config ARCH_CHIP_LPC1767
+ bool "LPC1767"
+
+config ARCH_CHIP_LPC1768
+ bool "LPC1768"
+
+config ARCH_CHIP_LPC1769
+ bool "LPC1769"
+
+endchoice
+
+config ARCH_FAMILY_LPC175X
+ bool
+ default y if ARCH_CHIP_LPC1751 || ARCH_CHIP_LPC1752 || ARCH_CHIP_LPC1754 || ARCH_CHIP_LPC1756 || ARCH_CHIP_LPC1758 || ARCH_CHIP_LPC1759
+
+config ARCH_FAMILY_LPC176X
+ bool
+ default y if ARCH_CHIP_LPC1764 || ARCH_CHIP_LPC1765 || ARCH_CHIP_LPC1766 || ARCH_CHIP_LPC1767 || ARCH_CHIP_LPC1768 || ARCH_CHIP_LPC1769
+
+config ARCH_CORTEXM3
+ bool
+ default y if ARCH_CHIP_LPC17XX
+
+config ARCH_CORTEXM4
+ bool
+ default n
+
+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_ETHERNET
+ bool "Ethernet"
+ select NET
+ select ARCH_HAS_PHY
+ default n
+
+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_UART0
+ bool "UART0"
+ select ARCH_HAS_UART0
+ default n
+
+config LPC17_UART1
+ bool "UART1"
+ select ARCH_HAS_UART1
+ default n
+
+config LPC17_UART2
+ bool "UART2"
+ select ARCH_HAS_UART2
+ default n
+
+config LPC17_UART3
+ bool "UART3"
+ select ARCH_HAS_UART3
+ default n
+
+config LPC17_CAN1
+ bool "CAN1"
+ select ARCH_HAS_UART4
+ default n
+
+config LPC17_CAN2
+ bool "CAN2"
+ default n
+
+config LPC17_SPI
+ bool "SPI"
+ default n
+
+config LPC17_SSP0
+ bool "SSP0"
+ default n
+
+config LPC17_SSP1
+ bool "SSP1"
+ default n
+
+config LPC17_I2C0
+ bool "I2C0"
+ default n
+
+config LPC17_I2C1
+ bool "I2C1"
+ 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_PWM
+ bool "PWM"
+ default n
+
+config LPC17_MCPWM
+ bool "MCPWM"
+ default n
+
+config LPC17_QEI
+ bool "QEI"
+ default n
+
+config LPC17_RTC
+ bool "RTC"
+ default n
+
+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_FLASH
+ bool "FLASH"
+ default n
+
+endmenu
+
+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..
+
+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 CONFIG_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
+ bool "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
+ bool "TSEG2 quanta"
+ depends on LPC17_CAN1 || LPC17_CAN2
+ default 4
+ ---help---
+ The number of CAN time quanta in segment 2. Default: 7
+
+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_FRAME_INTERRUPT
+ bool "USB "
+ 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
+
+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.
+
+endmenu
diff --git a/nuttx/arch/arm/src/lpc43xx/Kconfig b/nuttx/arch/arm/src/lpc43xx/Kconfig
index 351b940aa1..3010046efa 100644
--- a/nuttx/arch/arm/src/lpc43xx/Kconfig
+++ b/nuttx/arch/arm/src/lpc43xx/Kconfig
@@ -261,6 +261,7 @@ config LPC43_USART0
config LPC43_UART1
bool "UART1"
+ select ARCH_HAS_UART1
default n
config LPC43_USART2
@@ -292,49 +293,6 @@ config LPC43_WWDT
endmenu
-menu "UART1 Configuration"
- depends on LPC43_UART1
-
-config UART1_RXBUFSIZE
- int "UART1 Rx buffer size"
- default 256
- ---help---
- Characters are buffered as received. This specific the size of the receive
- buffer.
-
-config UART1_TXBUFSIZE
- int "UART1 Tx buffer size"
- default 256
- ---help---
- Characters are buffered before being sent. This specific the size of the
- transmit buffer
-
-config UART1_BAUD
- int "UART1 BAUD"
- default 11520
- ---help---
- The configured BAUD of the UART
-
-config UART1_BITS
- int "UART1 number of bits"
- default 8
- ---help---
- The number of bits. Must be either 7 or 8.
-
-config UART1_PARITY
- int "UART1 parity"
- default 0
- ---help---
- 0=no parity, 1=odd parity, 2=even parity
-
-config UART1_2STOP
- int "UART1 two stop bits"
- default 0
- ---help---
- 0=1 stop bit, 1=Two stop bits. Default: 1 stop bit
-
-endmenu
-
config SERIAL_TERMIOS
bool "Serial driver TERMIOS supported"
depends on LPC43_USART0 || LPC43_UART1 || LPC43_USART2 || LPC43_USART3
diff --git a/nuttx/arch/arm/src/stm32/Kconfig b/nuttx/arch/arm/src/stm32/Kconfig
index 0aa1f76b71..371d39ed4f 100644
--- a/nuttx/arch/arm/src/stm32/Kconfig
+++ b/nuttx/arch/arm/src/stm32/Kconfig
@@ -303,10 +303,12 @@ config STM32_USART3
config STM32_UART4
bool "UART4"
+ select ARCH_HAS_UART4
default n
config STM32_UART5
bool "UART5"
+ select ARCH_HAS_UART5
default n
config STM32_USART6
@@ -1445,53 +1447,6 @@ config USART3_RXDMA
---help---
In high data rate usage, Rx DMA may eliminate Rx overrun errors
-menu "UART4 Configuration"
- depends on STM32_UART4
-
-config UART4_SERIAL_CONSOLE
- bool "UART4 serial console"
- default y if !STM32_USART1 && !STM32_USART2 && !STM32_USART3
- ---help---
- Selects the UART4 for the console and ttys0 (default is the USART1).
-
-config UART4_RXBUFSIZE
- int "UART4 Rx buffer size"
- default 256
- ---help---
- Characters are buffered as received. This specific the size of the receive
- buffer.
-
-config UART4_TXBUFSIZE
- int "UART4 Tx buffer size"
- default 256
- ---help---
- Characters are buffered before being sent. This specific the size of the
- transmit buffer
-
-config UART4_BAUD
- int "UART4 BAUD"
- default 11520
- ---help---
- The configured BAUD of the UART
-
-config UART4_BITS
- int "UART4 number of bits"
- default 8
- ---help---
- The number of bits. Must be either 7 or 8.
-
-config UART4_PARITY
- int "UART4 parity"
- default 0
- ---help---
- 0=no parity, 1=odd parity, 2=even parity
-
-config UART4_2STOP
- int "UART4 two stop bits"
- default 0
- ---help---
- 0=1 stop bit, 1=Two stop bits. Default: 1 stop bit
-
config UART4_RXDMA
bool "UART4 Rx DMA"
default n
@@ -1499,55 +1454,6 @@ config UART4_RXDMA
---help---
In high data rate usage, Rx DMA may eliminate Rx overrun errors
-endmenu
-
-menu "UART5 Configuration"
- depends on STM32_UART5
-
-config UART5_SERIAL_CONSOLE
- bool "UART5 serial console"
- default y if !STM32_USART1 && !STM32_USART2 && !STM32_USART3 && !STM32_UART4
- ---help---
- Selects the UART5 for the console and ttys0 (default is the USART1).
-
-config UART5_RXBUFSIZE
- int "UART5 Rx buffer size"
- default 256
- ---help---
- Characters are buffered as received. This specific the size of the receive
- buffer.
-
-config UART5_TXBUFSIZE
- int "UART5 Tx buffer size"
- default 256
- ---help---
- Characters are buffered before being sent. This specific the size of the
- transmit buffer
-
-config UART5_BAUD
- int "UART5 BAUD"
- default 11520
- ---help---
- The configured BAUD of the UART
-
-config UART5_BITS
- int "UART5 number of bits"
- default 8
- ---help---
- The number of bits. Must be either 7 or 8.
-
-config UART5_PARITY
- int "UART5 parity"
- default 0
- ---help---
- 0=no parity, 1=odd parity, 2=even parity
-
-config UART5_2STOP
- int "UART5 two stop bits"
- default 0
- ---help---
- 0=1 stop bit, 1=Two stop bits. Default: 1 stop bit
-
config UART5_RXDMA
bool "UART5 Rx DMA"
default n
@@ -1555,8 +1461,6 @@ config UART5_RXDMA
---help---
In high data rate usage, Rx DMA may eliminate Rx overrun errors
-endmenu
-
config USART6_RXDMA
bool "USART6 Rx DMA"
default n