310 lines
7.1 KiB
Plaintext
310 lines
7.1 KiB
Plaintext
# SPDX-License-Identifier: GPL-2.0
|
|
#
|
|
# Copyright 2009 Simtec Electronics
|
|
|
|
config PLAT_SAMSUNG
|
|
bool
|
|
depends on PLAT_S3C24XX || ARCH_S3C64XX || ARCH_EXYNOS || ARCH_S5PV210
|
|
default y
|
|
select GENERIC_IRQ_CHIP
|
|
select NO_IOPORT_MAP
|
|
help
|
|
Base platform code for all Samsung SoC based systems
|
|
|
|
config SAMSUNG_PM
|
|
bool
|
|
depends on PM && (PLAT_S3C24XX || ARCH_S3C64XX)
|
|
default y
|
|
help
|
|
Base platform power management code for samsung code
|
|
|
|
if PLAT_SAMSUNG
|
|
menu "Samsung Common options"
|
|
|
|
# boot configurations
|
|
|
|
comment "Boot options"
|
|
|
|
config S3C_LOWLEVEL_UART_PORT
|
|
int "S3C UART to use for low-level messages"
|
|
depends on ARCH_S3C64XX
|
|
default 0
|
|
help
|
|
Choice of which UART port to use for the low-level messages,
|
|
such as the `Uncompressing...` at start time. The value of
|
|
this configuration should be between zero and two. The port
|
|
must have been initialised by the boot-loader before use.
|
|
|
|
config SAMSUNG_ATAGS
|
|
def_bool n
|
|
depends on ATAGS
|
|
help
|
|
This option enables ATAGS based boot support code for
|
|
Samsung platforms, including static platform devices, legacy
|
|
clock, timer and interrupt initialization, etc.
|
|
|
|
Platforms that support only DT based boot need not to select
|
|
this option.
|
|
|
|
if SAMSUNG_ATAGS
|
|
|
|
config S3C_GPIO_SPACE
|
|
int "Space between gpio banks"
|
|
default 0
|
|
help
|
|
Add a number of spare GPIO entries between each bank for debugging
|
|
purposes. This allows any problems where an counter overflows from
|
|
one bank to another to be caught, at the expense of using a little
|
|
more memory.
|
|
|
|
config S3C_GPIO_TRACK
|
|
bool
|
|
help
|
|
Internal configuration option to enable the s3c specific gpio
|
|
chip tracking if the platform requires it.
|
|
|
|
# ADC driver
|
|
|
|
config S3C_ADC
|
|
bool "ADC common driver support"
|
|
depends on !ARCH_MULTIPLATFORM
|
|
help
|
|
Core support for the ADC block found in the Samsung SoC systems
|
|
for drivers such as the touchscreen and hwmon to use to share
|
|
this resource.
|
|
|
|
# device definitions to compile in
|
|
|
|
config S3C_DEV_HSMMC
|
|
bool
|
|
help
|
|
Compile in platform device definitions for HSMMC code
|
|
|
|
config S3C_DEV_HSMMC1
|
|
bool
|
|
help
|
|
Compile in platform device definitions for HSMMC channel 1
|
|
|
|
config S3C_DEV_HSMMC2
|
|
bool
|
|
help
|
|
Compile in platform device definitions for HSMMC channel 2
|
|
|
|
config S3C_DEV_HSMMC3
|
|
bool
|
|
help
|
|
Compile in platform device definitions for HSMMC channel 3
|
|
|
|
config S3C_DEV_HWMON
|
|
bool
|
|
help
|
|
Compile in platform device definitions for HWMON
|
|
|
|
config S3C_DEV_I2C1
|
|
bool
|
|
help
|
|
Compile in platform device definitions for I2C channel 1
|
|
|
|
config S3C_DEV_I2C2
|
|
bool
|
|
help
|
|
Compile in platform device definitions for I2C channel 2
|
|
|
|
config S3C_DEV_I2C3
|
|
bool
|
|
help
|
|
Compile in platform device definition for I2C controller 3
|
|
|
|
config S3C_DEV_I2C4
|
|
bool
|
|
help
|
|
Compile in platform device definition for I2C controller 4
|
|
|
|
config S3C_DEV_I2C5
|
|
bool
|
|
help
|
|
Compile in platform device definition for I2C controller 5
|
|
|
|
config S3C_DEV_I2C6
|
|
bool
|
|
help
|
|
Compile in platform device definition for I2C controller 6
|
|
|
|
config S3C_DEV_I2C7
|
|
bool
|
|
help
|
|
Compile in platform device definition for I2C controller 7
|
|
|
|
config S3C_DEV_FB
|
|
bool
|
|
help
|
|
Compile in platform device definition for framebuffer
|
|
|
|
config S3C_DEV_USB_HOST
|
|
bool
|
|
help
|
|
Compile in platform device definition for USB host.
|
|
|
|
config S3C_DEV_USB_HSOTG
|
|
bool
|
|
help
|
|
Compile in platform device definition for USB high-speed OtG
|
|
|
|
config S3C_DEV_WDT
|
|
bool
|
|
default y if ARCH_S3C24XX
|
|
help
|
|
Complie in platform device definition for Watchdog Timer
|
|
|
|
config S3C_DEV_NAND
|
|
bool
|
|
help
|
|
Compile in platform device definition for NAND controller
|
|
|
|
config S3C_DEV_ONENAND
|
|
bool
|
|
help
|
|
Compile in platform device definition for OneNAND controller
|
|
|
|
config S3C_DEV_RTC
|
|
bool
|
|
help
|
|
Complie in platform device definition for RTC
|
|
|
|
config SAMSUNG_DEV_ADC
|
|
bool
|
|
help
|
|
Compile in platform device definition for ADC controller
|
|
|
|
config SAMSUNG_DEV_IDE
|
|
bool
|
|
help
|
|
Compile in platform device definitions for IDE
|
|
|
|
config S3C64XX_DEV_SPI0
|
|
bool
|
|
help
|
|
Compile in platform device definitions for S3C64XX's type
|
|
SPI controller 0
|
|
|
|
config S3C64XX_DEV_SPI1
|
|
bool
|
|
help
|
|
Compile in platform device definitions for S3C64XX's type
|
|
SPI controller 1
|
|
|
|
config S3C64XX_DEV_SPI2
|
|
bool
|
|
help
|
|
Compile in platform device definitions for S3C64XX's type
|
|
SPI controller 2
|
|
|
|
config SAMSUNG_DEV_TS
|
|
bool
|
|
help
|
|
Common in platform device definitions for touchscreen device
|
|
|
|
config SAMSUNG_DEV_KEYPAD
|
|
bool
|
|
help
|
|
Compile in platform device definitions for keypad
|
|
|
|
config SAMSUNG_DEV_PWM
|
|
bool
|
|
default y if ARCH_S3C24XX
|
|
help
|
|
Compile in platform device definition for PWM Timer
|
|
|
|
config S3C24XX_PWM
|
|
bool "PWM device support"
|
|
select PWM
|
|
select PWM_SAMSUNG
|
|
help
|
|
Support for exporting the PWM timer blocks via the pwm device
|
|
system
|
|
|
|
config GPIO_SAMSUNG
|
|
def_bool y
|
|
|
|
config SAMSUNG_PM_GPIO
|
|
bool
|
|
default y if GPIO_SAMSUNG && PM
|
|
help
|
|
Include legacy GPIO power management code for platforms not using
|
|
pinctrl-samsung driver.
|
|
endif
|
|
|
|
comment "Power management"
|
|
|
|
config SAMSUNG_PM_DEBUG
|
|
bool "Samsung PM Suspend debug"
|
|
depends on PM && DEBUG_KERNEL
|
|
depends on PLAT_S3C24XX || ARCH_S3C64XX || ARCH_S5PV210
|
|
depends on DEBUG_EXYNOS_UART || DEBUG_S3C24XX_UART || DEBUG_S3C2410_UART
|
|
depends on DEBUG_LL && MMU
|
|
help
|
|
Say Y here if you want verbose debugging from the PM Suspend and
|
|
Resume code. See <file:Documentation/arm/samsung-s3c24xx/suspend.rst>
|
|
for more information.
|
|
|
|
config S3C_PM_DEBUG_LED_SMDK
|
|
bool "SMDK LED suspend/resume debugging"
|
|
depends on PM && (MACH_SMDK6410)
|
|
help
|
|
Say Y here to enable the use of the SMDK LEDs on the baseboard
|
|
for debugging of the state of the suspend and resume process.
|
|
|
|
Note, this currently only works for S3C64XX based SMDK boards.
|
|
|
|
config SAMSUNG_PM_CHECK
|
|
bool "S3C2410 PM Suspend Memory CRC"
|
|
depends on PM && (PLAT_S3C24XX || ARCH_S3C64XX || ARCH_S5PV210)
|
|
select CRC32
|
|
help
|
|
Enable the PM code's memory area checksum over sleep. This option
|
|
will generate CRCs of all blocks of memory, and store them before
|
|
going to sleep. The blocks are then checked on resume for any
|
|
errors.
|
|
|
|
Note, this can take several seconds depending on memory size
|
|
and CPU speed.
|
|
|
|
See <file:Documentation/arm/samsung-s3c24xx/suspend.rst>
|
|
|
|
config SAMSUNG_PM_CHECK_CHUNKSIZE
|
|
int "S3C2410 PM Suspend CRC Chunksize (KiB)"
|
|
depends on PM && SAMSUNG_PM_CHECK
|
|
default 64
|
|
help
|
|
Set the chunksize in Kilobytes of the CRC for checking memory
|
|
corruption over suspend and resume. A smaller value will mean that
|
|
the CRC data block will take more memory, but will identify any
|
|
faults with better precision.
|
|
|
|
See <file:Documentation/arm/samsung-s3c24xx/suspend.rst>
|
|
|
|
config SAMSUNG_WAKEMASK
|
|
bool
|
|
depends on PM
|
|
help
|
|
Compile support for wakeup-mask controls found on the S3C6400
|
|
and above. This code allows a set of interrupt to wakeup-mask
|
|
mappings. See <plat/wakeup-mask.h>
|
|
|
|
config SAMSUNG_WDT_RESET
|
|
bool
|
|
help
|
|
Compile support for system restart by triggering watchdog reset.
|
|
Used on SoCs that do not provide dedicated reset control.
|
|
|
|
config DEBUG_S3C_UART
|
|
depends on PLAT_SAMSUNG
|
|
int
|
|
default "0" if DEBUG_S3C_UART0
|
|
default "1" if DEBUG_S3C_UART1
|
|
default "2" if DEBUG_S3C_UART2
|
|
default "3" if DEBUG_S3C_UART3
|
|
|
|
endmenu
|
|
endif
|