mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-16 16:54:20 +08:00
ce816fa88c
If the renamed symbol is defined lib/iomap.c implements ioport_map and ioport_unmap and currently (nearly) all platforms define the port accessor functions outb/inb and friend unconditionally. So HAS_IOPORT_MAP is the better name for this. Consequently NO_IOPORT is renamed to NO_IOPORT_MAP. The motivation for this change is to reintroduce a symbol HAS_IOPORT that signals if outb/int et al are available. I will address that at least one merge window later though to keep surprises to a minimum and catch new introductions of (HAS|NO)_IOPORT. The changes in this commit were done using: $ git grep -l -E '(NO|HAS)_IOPORT' | xargs perl -p -i -e 's/\b((?:CONFIG_)?(?:NO|HAS)_IOPORT)\b/$1_MAP/' Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Acked-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
507 lines
11 KiB
Plaintext
507 lines
11 KiB
Plaintext
# arch/arm/plat-samsung/Kconfig
|
|
#
|
|
# Copyright 2009 Simtec Electronics
|
|
#
|
|
# Licensed under GPLv2
|
|
|
|
config PLAT_SAMSUNG
|
|
bool
|
|
depends on PLAT_S3C24XX || ARCH_S3C64XX || PLAT_S5P || ARCH_EXYNOS
|
|
default y
|
|
select GENERIC_IRQ_CHIP
|
|
select NO_IOPORT_MAP
|
|
help
|
|
Base platform code for all Samsung SoC based systems
|
|
|
|
config PLAT_S5P
|
|
bool
|
|
depends on (ARCH_S5P64X0 || ARCH_S5PC100 || ARCH_S5PV210)
|
|
default y
|
|
select ARCH_REQUIRE_GPIOLIB
|
|
select ARM_VIC
|
|
select NO_IOPORT_MAP
|
|
select PLAT_SAMSUNG
|
|
select S3C_GPIO_TRACK
|
|
select S5P_GPIO_DRVSTR
|
|
select SAMSUNG_CLKSRC if !COMMON_CLK
|
|
help
|
|
Base platform code for Samsung's S5P series SoC.
|
|
|
|
config SAMSUNG_PM
|
|
bool
|
|
depends on PM && (PLAT_S3C24XX || ARCH_S3C64XX || ARCH_S5P64X0 || S5P_PM)
|
|
default y
|
|
help
|
|
Base platform power management code for samsung code
|
|
|
|
if PLAT_SAMSUNG
|
|
|
|
# boot configurations
|
|
|
|
comment "Boot options"
|
|
|
|
config S3C_BOOT_ERROR_RESET
|
|
bool "S3C Reboot on decompression error"
|
|
help
|
|
Say y here to use the watchdog to reset the system if the
|
|
kernel decompressor detects an error during decompression.
|
|
|
|
config S3C_BOOT_UART_FORCE_FIFO
|
|
bool "Force UART FIFO on during boot process"
|
|
default y
|
|
help
|
|
Say Y here to force the UART FIFOs on during the kernel
|
|
uncompressor
|
|
|
|
|
|
config S3C_LOWLEVEL_UART_PORT
|
|
int "S3C UART to use for low-level messages"
|
|
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 !ARCH_MULTIPLATFORM
|
|
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
|
|
|
|
# clock options
|
|
|
|
config SAMSUNG_CLOCK
|
|
bool
|
|
default y if !COMMON_CLK
|
|
|
|
config SAMSUNG_CLKSRC
|
|
bool
|
|
help
|
|
Select the clock code for the clksrc implementation
|
|
used by newer systems such as the S3C64XX.
|
|
|
|
config S5P_CLOCK
|
|
def_bool (ARCH_S5P64X0 || ARCH_S5PC100 || ARCH_S5PV210)
|
|
help
|
|
Support common clock part for ARCH_S5P and ARCH_EXYNOS SoCs
|
|
|
|
# options for IRQ support
|
|
|
|
config S5P_IRQ
|
|
def_bool (ARCH_S5P64X0 || ARCH_S5PC100 || ARCH_S5PV210)
|
|
help
|
|
Support common interrupt part for ARCH_S5P SoCs
|
|
|
|
config S5P_EXT_INT
|
|
bool
|
|
help
|
|
Use the external interrupts (other than GPIO interrupts.)
|
|
Note: Do not choose this for S5P6440 and S5P6450.
|
|
|
|
config S5P_GPIO_INT
|
|
bool
|
|
help
|
|
Common code for the GPIO interrupts (other than external interrupts.)
|
|
|
|
# options for gpio configuration support
|
|
|
|
config S5P_GPIO_DRVSTR
|
|
bool
|
|
help
|
|
Internal configuration to get and set correct GPIO driver strength
|
|
helper
|
|
|
|
config SAMSUNG_GPIO_EXTRA
|
|
int "Number of additional GPIO pins"
|
|
default 128 if SAMSUNG_GPIO_EXTRA128
|
|
default 64 if SAMSUNG_GPIO_EXTRA64
|
|
default 0
|
|
help
|
|
Use additional GPIO space in addition to the GPIO's the SOC
|
|
provides. This allows expanding the GPIO space for use with
|
|
GPIO expanders.
|
|
|
|
config SAMSUNG_GPIO_EXTRA64
|
|
bool
|
|
|
|
config SAMSUNG_GPIO_EXTRA128
|
|
bool
|
|
|
|
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.
|
|
|
|
# uart options
|
|
|
|
config S5P_DEV_UART
|
|
def_bool y
|
|
depends on (ARCH_S5P64X0 || ARCH_S5PC100 || ARCH_S5PV210)
|
|
|
|
# ADC driver
|
|
|
|
config S3C_ADC
|
|
bool "ADC common driver support"
|
|
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 SAMSUNG_DEV_BACKLIGHT
|
|
bool
|
|
depends on SAMSUNG_DEV_PWM
|
|
help
|
|
Compile in platform device definition LCD backlight with PWM Timer
|
|
|
|
config S5P_DEV_CSIS0
|
|
bool
|
|
help
|
|
Compile in platform device definitions for MIPI-CSIS channel 0
|
|
|
|
config S5P_DEV_CSIS1
|
|
bool
|
|
help
|
|
Compile in platform device definitions for MIPI-CSIS channel 1
|
|
|
|
config S5P_DEV_FIMC0
|
|
bool
|
|
help
|
|
Compile in platform device definitions for FIMC controller 0
|
|
|
|
config S5P_DEV_FIMC1
|
|
bool
|
|
help
|
|
Compile in platform device definitions for FIMC controller 1
|
|
|
|
config S5P_DEV_FIMC2
|
|
bool
|
|
help
|
|
Compile in platform device definitions for FIMC controller 2
|
|
|
|
config S5P_DEV_FIMC3
|
|
bool
|
|
help
|
|
Compile in platform device definitions for FIMC controller 3
|
|
|
|
config S5P_DEV_FIMD0
|
|
bool
|
|
help
|
|
Compile in platform device definitions for FIMD controller 0
|
|
|
|
config S5P_DEV_G2D
|
|
bool
|
|
help
|
|
Compile in platform device definitions for G2D device
|
|
|
|
config S5P_DEV_I2C_HDMIPHY
|
|
bool
|
|
help
|
|
Compile in platform device definitions for I2C HDMIPHY controller
|
|
|
|
config S5P_DEV_JPEG
|
|
bool
|
|
help
|
|
Compile in platform device definitions for JPEG codec
|
|
|
|
config S5P_DEV_ONENAND
|
|
bool
|
|
help
|
|
Compile in platform device definition for OneNAND controller
|
|
|
|
config S5P_DEV_TV
|
|
bool
|
|
help
|
|
Compile in platform device definition for TV interface
|
|
|
|
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 S3C_SETUP_CAMIF
|
|
bool
|
|
help
|
|
Compile in common setup code for S3C CAMIF devices
|
|
|
|
# DMA
|
|
|
|
config S3C_DMA
|
|
bool
|
|
help
|
|
Internal configuration for S3C DMA core
|
|
|
|
config S5P_IRQ_PM
|
|
bool
|
|
default y if S5P_PM
|
|
help
|
|
Legacy IRQ power management for S5P platforms
|
|
|
|
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
|
|
|
|
config SAMSUNG_DMADEV
|
|
bool
|
|
select ARM_AMBA
|
|
select DMADEVICES
|
|
select PL330_DMA if (ARCH_EXYNOS5 || ARCH_EXYNOS4 || CPU_S5PV210 || CPU_S5PC100 || \
|
|
CPU_S5P6450 || CPU_S5P6440)
|
|
help
|
|
Use DMA device engine for PL330 DMAC.
|
|
|
|
config S5P_DEV_MFC
|
|
bool
|
|
help
|
|
Compile in setup memory (init) code for MFC
|
|
|
|
comment "Power management"
|
|
|
|
config SAMSUNG_PM_DEBUG
|
|
bool "S3C2410 PM Suspend debug"
|
|
depends on PM && DEBUG_KERNEL && DEBUG_S3C_UART
|
|
help
|
|
Say Y here if you want verbose debugging from the PM Suspend and
|
|
Resume code. See <file:Documentation/arm/Samsung-S3C24XX/Suspend.txt>
|
|
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
|
|
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.txt>
|
|
|
|
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 wil identify any
|
|
faults with better precision.
|
|
|
|
See <file:Documentation/arm/Samsung-S3C24XX/Suspend.txt>
|
|
|
|
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 S5P_PM
|
|
bool
|
|
help
|
|
Common code for power management support on S5P and newer SoCs
|
|
Note: Do not select this for S5P6440 and S5P6450.
|
|
|
|
config S5P_SLEEP
|
|
bool
|
|
help
|
|
Internal config node to apply common S5P sleep management code.
|
|
Can be selected by S5P and newer SoCs with similar sleep procedure.
|
|
|
|
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
|
|
|
|
endif
|