# see kconfig-language at https://www.kernel.org/doc/Documentation/kbuild/kconfig-language.txt
#
-comment "Samsung S5J Chip Configuration Options"
+comment "S5J Configuration Options"
choice
- prompt "Samsung Chip Selection"
+ prompt "S5J Chip Selection"
default ARCH_CHIP_S5JT200
+ depends on ARCH_CHIP_S5J
config ARCH_CHIP_S5JT200
bool "S5JT200"
- depends on ARCH_CHIP_S5J
- select S5J_S5JT200
select ARCH_CORTEXR4
select ARMV7A_HAVE_GICv2
select ARMV7R_ICACHE
select ARMV7R_DCACHE
+ select S5J_S5JT200
endchoice
config S5J_S5JT200
bool
- default y
- select S5J_UARTDBG
- select S5J_UART0
- select S5J_UART1
- select S5J_UART2
- select S5J_UART3
+ default n
+ select S5J_HAVE_ADC
+ select S5J_HAVE_DMA
+ select S5J_HAVE_I2C
+ select S5J_HAVE_PWM
+ select S5J_HAVE_PWR
+ select S5J_HAVE_RTC
+ select S5J_HAVE_SFLASH
+ select S5J_HAVE_SPI
+ select S5J_HAVE_SSS
+ select S5J_HAVE_UARTDBG
+ select S5J_HAVE_UART0
+ select S5J_HAVE_UART1
+ select S5J_HAVE_UART2
+ select S5J_HAVE_UART3
+ select S5J_HAVE_WATCHDOG
+
+menu "S5J Peripheral Support"
+
+# These "hidden" settings determine peripheral options that are available for
+# the selection MCU.
+
+config S5J_HAVE_ADC
+ bool
+ default n
+
+config S5J_HAVE_DMA
+ bool
+ default n
+
+config S5J_HAVE_I2C
+ bool
+ default n
+
+config S5J_HAVE_PWM
+ bool
+ default n
+
+config S5J_HAVE_PWR
+ bool
+ default n
+
+config S5J_HAVE_RTC
+ bool
+ default n
+
+config S5J_HAVE_SFLASH
+ bool
+ default n
+
+config S5J_HAVE_SPI
+ bool
+ default n
+
+config S5J_HAVE_SSS
+ bool
+ default n
-menu "S5J DEBUG UART Configuration"
config S5J_HAVE_UARTDBG
bool
- default y
+ default n
config S5J_HAVE_UART0
bool
- default y
+ default n
config S5J_HAVE_UART1
bool
- default y
+ default n
config S5J_HAVE_UART2
bool
- default y
+ default n
config S5J_HAVE_UART3
bool
+ default n
+
+config S5J_HAVE_WATCHDOG
+ bool
+ default n
+
+config S5J_SERIALDRIVER
+ bool
+ default n
+
+config S5J_ADC
+ bool "ADC"
+ default n
+ depends on S5J_HAVE_ADC
+ select ANALOG
+ select ADC
+ select SCHED_WORKQUEUE
+ select SCHED_LPWORK
+ ---help---
+ S5J has 12-bits ADC with 4 channels. Say Y here, if you want
+ to use it.
+
+config S5J_DMA
+ bool "DMA"
+ default n
+ depends on S5J_HAVE_DMA
+
+config S5J_I2C
+ bool "I2C"
+ default n
+ depends on S5J_HAVE_I2C
+
+config S5J_UART0
+ bool "UART0"
+ default n
+ depends on S5J_HAVE_UART0
+ select S5J_SERIALDRIVER
+ select ARCH_HAVE_UART0
+ select ARCH_HAVE_SERIAL_TERMIOS
+
+config S5J_UART1
+ bool "UART1"
+ default n
+ depends on S5J_HAVE_UART1
+ select S5J_SERIALDRIVER
+ select ARCH_HAVE_UART1
+ select ARCH_HAVE_SERIAL_TERMIOS
+
+config S5J_UART2
+ bool "UART2"
+ default n
+ depends on S5J_HAVE_UART2
+ select S5J_SERIALDRIVER
+ select ARCH_HAVE_UART2
+ select ARCH_HAVE_SERIAL_TERMIOS
+
+config S5J_UART3
+ bool "UART3"
+ default n
+ depends on S5J_HAVE_UART3
+ select S5J_SERIALDRIVER
+ select ARCH_HAVE_UART3
+ select ARCH_HAVE_SERIAL_TERMIOS
+
+config S5J_UARTDBG
+ bool "Debug UART"
default y
+ depends on S5J_HAVE_UARTDBG
+ select S5J_SERIALDRIVER
+ select ARCH_HAVE_UART4
+ select ARCH_HAVE_SERIAL_TERMIOS
+
+menu "Debug UART Configuration"
+ depends on S5J_UARTDBG
-if S5J_HAVE_UARTDBG
config UARTDBG_RXBUFSIZE
int "uartdbg rx buffer size"
default 256
config UARTDBG_2STOP
int "stop bit"
default 0
-endif
-
-config S5J_UARTDBG
- bool
- default n
- select S5J_HAVE_UARTDBG
- select UART0_SERIAL_CONSOLE
-config S5J_UART0
- bool
- default n
- select ARCH_HAVE_UART0
- select UART0_SERIAL_CONSOLE
-
-config S5J_UART1
- bool
- default n
- select ARCH_HAVE_UART1
- select S5J_HAVE_UART1
- select UART1_SERIAL_CONSOLE
-
-config S5J_UART2
- bool
- default n
- select ARCH_HAVE_UART2
- select S5J_HAVE_UART2
- select UART2_SERIAL_CONSOLE
-
-config S5J_UART3
- bool
- default n
- select ARCH_HAVE_UART3
- select S5J_HAVE_UART3
- select UART2_SERIAL_CONSOLE
-
-endmenu #"S5J UART Configuration"
+endmenu
config S5J_PWM
- bool "S5J PWM support"
+ bool "PWM"
+ depends on S5J_HAVE_PWM
default n
config S5J_SSS
- bool "S5J SSS support"
+ bool "SSS"
+ depends on S5J_HAVE_SSS
default y
-menu "S5J SPI(Serial Peripheral Interface Bus)"
config S5J_SPI
- bool "S5J SPI support"
+ bool "SPI"
+ depends on S5J_HAVE_SPI
default y
-endmenu
-menu "S5J WDT(Watch Dog Timer)"
config S5J_WATCHDOG
- bool "S5J WDT support"
+ bool "Watchdog"
+ depends on S5J_HAVE_WATCHDOG
default n
+menu "Watchdog driver configuration"
+ depends on S5J_WATCHDOG
+
config S5J_WATCHDOG_DEBUG
bool "S5J Watchdog debug"
default n
int "S5J Watchdog Timeout(in msec)"
default 7000
depends on S5J_WATCHDOG
-endmenu
-config S5J_ADC
- bool "ADC"
- default n
- select ANALOG
- select ADC
- select SCHED_WORKQUEUE
- select SCHED_LPWORK
- ---help---
- S5J has 12-bits ADC with 4 channels. Say Y here, if you want
- to use it.
-
-menu "S5J I2C"
-config S5J_I2C
- bool "S5J I2C support"
- default n
endmenu
config S5J_SFLASH
- bool "S5J Serial Flash support"
+ bool "SFLASH"
default y
+ depends on S5J_HAVE_SFLASH
-config S5J_DEBUG_BREAK
- bool "S5J debug break on boot process"
- help
- this enable break during booting, on s5j_boot.c before os_start()
-
-menu "S5J PMU Config"
config S5J_PWR
- bool "S5J PMU feature"
+ bool "PMU"
default n
+ depends on S5J_HAVE_PWR
+
+menu "PMU Configuration"
+ depends on S5J_PWR
config S5J_PWR_DSTOP
bool "S5J DSTOP Power Mode"
config S5J_PWR_SLEEP
bool "S5J SLEEP Power Mode"
default n
+
endmenu
-config S5J_DMA
- bool "S5J DMA enable"
- default n
+endmenu
+
+config S5J_DEBUG_BREAK
+ bool "S5J debug break on boot process"
+ help
+ this enable break during booting, on s5j_boot.c before os_start()