2009-11-10 03:14:58 +03:00
# arch/arm/plat-samsung/Kconfig
#
# Copyright 2009 Simtec Electronics
#
# Licensed under GPLv2
config PLAT_SAMSUNG
bool
2013-06-18 20:26:42 +04:00
depends on PLAT_S3C24XX || ARCH_S3C64XX || PLAT_S5P || ARCH_EXYNOS
2009-11-10 03:14:58 +03:00
default y
ARM: config: sort select statements alphanumerically
As suggested by Andrew Morton:
This is a pet peeve of mine. Any time there's a long list of items
(header file inclusions, kconfig entries, array initalisers, etc) and
someone wants to add a new item, they *always* go and stick it at the
end of the list.
Guys, don't do this. Either put the new item into a randomly-chosen
position or, probably better, alphanumerically sort the list.
lets sort all our select statements alphanumerically. This commit was
created by the following perl:
while (<>) {
while (/\\\s*$/) {
$_ .= <>;
}
undef %selects if /^\s*config\s+/;
if (/^\s+select\s+(\w+).*/) {
if (defined($selects{$1})) {
if ($selects{$1} eq $_) {
print STDERR "Warning: removing duplicated $1 entry\n";
} else {
print STDERR "Error: $1 differently selected\n".
"\tOld: $selects{$1}\n".
"\tNew: $_\n";
exit 1;
}
}
$selects{$1} = $_;
next;
}
if (%selects and (/^\s*$/ or /^\s+help/ or /^\s+---help---/ or
/^endif/ or /^endchoice/)) {
foreach $k (sort (keys %selects)) {
print "$selects{$k}";
}
undef %selects;
}
print;
}
if (%selects) {
foreach $k (sort (keys %selects)) {
print "$selects{$k}";
}
}
It found two duplicates:
Warning: removing duplicated S5P_SETUP_MIPIPHY entry
Warning: removing duplicated HARDIRQS_SW_RESEND entry
and they are identical duplicates, hence the shrinkage in the diffstat
of two lines.
We have four testers reporting success of this change (Tony, Stephen,
Linus and Sekhar.)
Acked-by: Jason Cooper <jason@lakedaemon.net>
Acked-by: Tony Lindgren <tony@atomide.com>
Acked-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Acked-by: Sekhar Nori <nsekhar@ti.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2012-10-06 20:12:25 +04:00
select GENERIC_IRQ_CHIP
select NO_IOPORT
2009-11-10 03:14:58 +03:00
help
Base platform code for all Samsung SoC based systems
2012-05-13 02:11:38 +04:00
config PLAT_S5P
bool
2013-06-18 20:26:42 +04:00
depends on (ARCH_S5P64X0 || ARCH_S5PC100 || ARCH_S5PV210)
2012-05-13 02:11:38 +04:00
default y
ARM: config: sort select statements alphanumerically
As suggested by Andrew Morton:
This is a pet peeve of mine. Any time there's a long list of items
(header file inclusions, kconfig entries, array initalisers, etc) and
someone wants to add a new item, they *always* go and stick it at the
end of the list.
Guys, don't do this. Either put the new item into a randomly-chosen
position or, probably better, alphanumerically sort the list.
lets sort all our select statements alphanumerically. This commit was
created by the following perl:
while (<>) {
while (/\\\s*$/) {
$_ .= <>;
}
undef %selects if /^\s*config\s+/;
if (/^\s+select\s+(\w+).*/) {
if (defined($selects{$1})) {
if ($selects{$1} eq $_) {
print STDERR "Warning: removing duplicated $1 entry\n";
} else {
print STDERR "Error: $1 differently selected\n".
"\tOld: $selects{$1}\n".
"\tNew: $_\n";
exit 1;
}
}
$selects{$1} = $_;
next;
}
if (%selects and (/^\s*$/ or /^\s+help/ or /^\s+---help---/ or
/^endif/ or /^endchoice/)) {
foreach $k (sort (keys %selects)) {
print "$selects{$k}";
}
undef %selects;
}
print;
}
if (%selects) {
foreach $k (sort (keys %selects)) {
print "$selects{$k}";
}
}
It found two duplicates:
Warning: removing duplicated S5P_SETUP_MIPIPHY entry
Warning: removing duplicated HARDIRQS_SW_RESEND entry
and they are identical duplicates, hence the shrinkage in the diffstat
of two lines.
We have four testers reporting success of this change (Tony, Stephen,
Linus and Sekhar.)
Acked-by: Jason Cooper <jason@lakedaemon.net>
Acked-by: Tony Lindgren <tony@atomide.com>
Acked-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Acked-by: Sekhar Nori <nsekhar@ti.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2012-10-06 20:12:25 +04:00
select ARCH_REQUIRE_GPIOLIB
2013-06-18 20:26:42 +04:00
select ARM_VIC
2012-05-13 02:11:38 +04:00
select NO_IOPORT
ARM: config: sort select statements alphanumerically
As suggested by Andrew Morton:
This is a pet peeve of mine. Any time there's a long list of items
(header file inclusions, kconfig entries, array initalisers, etc) and
someone wants to add a new item, they *always* go and stick it at the
end of the list.
Guys, don't do this. Either put the new item into a randomly-chosen
position or, probably better, alphanumerically sort the list.
lets sort all our select statements alphanumerically. This commit was
created by the following perl:
while (<>) {
while (/\\\s*$/) {
$_ .= <>;
}
undef %selects if /^\s*config\s+/;
if (/^\s+select\s+(\w+).*/) {
if (defined($selects{$1})) {
if ($selects{$1} eq $_) {
print STDERR "Warning: removing duplicated $1 entry\n";
} else {
print STDERR "Error: $1 differently selected\n".
"\tOld: $selects{$1}\n".
"\tNew: $_\n";
exit 1;
}
}
$selects{$1} = $_;
next;
}
if (%selects and (/^\s*$/ or /^\s+help/ or /^\s+---help---/ or
/^endif/ or /^endchoice/)) {
foreach $k (sort (keys %selects)) {
print "$selects{$k}";
}
undef %selects;
}
print;
}
if (%selects) {
foreach $k (sort (keys %selects)) {
print "$selects{$k}";
}
}
It found two duplicates:
Warning: removing duplicated S5P_SETUP_MIPIPHY entry
Warning: removing duplicated HARDIRQS_SW_RESEND entry
and they are identical duplicates, hence the shrinkage in the diffstat
of two lines.
We have four testers reporting success of this change (Tony, Stephen,
Linus and Sekhar.)
Acked-by: Jason Cooper <jason@lakedaemon.net>
Acked-by: Tony Lindgren <tony@atomide.com>
Acked-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Acked-by: Sekhar Nori <nsekhar@ti.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2012-10-06 20:12:25 +04:00
select PLAT_SAMSUNG
2012-05-13 02:11:38 +04:00
select S3C_GPIO_TRACK
select S5P_GPIO_DRVSTR
2013-03-09 12:03:05 +04:00
select SAMSUNG_CLKSRC if !COMMON_CLK
2012-05-13 02:11:38 +04:00
help
Base platform code for Samsung's S5P series SoC.
2013-07-24 09:06:13 +04:00
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
2009-11-10 03:14:58 +03:00
if PLAT_SAMSUNG
2010-01-29 12:02:17 +03:00
# 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.
2013-06-15 04:01:49 +04:00
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
2010-01-29 12:02:17 +03:00
# clock options
2012-07-12 11:57:19 +04:00
config SAMSUNG_CLOCK
bool
default y if !COMMON_CLK
2009-12-01 04:24:34 +03:00
config SAMSUNG_CLKSRC
bool
help
Select the clock code for the clksrc implementation
used by newer systems such as the S3C64XX.
2009-11-10 03:14:58 +03:00
2012-04-16 08:13:29 +04:00
config S5P_CLOCK
2013-03-09 12:03:05 +04:00
def_bool (ARCH_S5P64X0 || ARCH_S5PC100 || ARCH_S5PV210)
2012-04-16 08:13:29 +04:00
help
Support common clock part for ARCH_S5P and ARCH_EXYNOS SoCs
2010-01-06 04:14:51 +03:00
# options for IRQ support
2012-04-16 08:40:33 +04:00
config S5P_IRQ
2013-04-23 19:46:31 +04:00
def_bool (ARCH_S5P64X0 || ARCH_S5PC100 || ARCH_S5PV210)
2012-04-16 08:40:33 +04:00
help
2013-04-23 19:46:31 +04:00
Support common interrupt part for ARCH_S5P SoCs
2012-04-16 08:40:33 +04:00
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.)
2010-01-05 20:28:20 +03:00
# options for gpio configuration support
2010-05-18 14:23:36 +04:00
config S5P_GPIO_DRVSTR
bool
help
Internal configuration to get and set correct GPIO driver strength
helper
2010-01-11 06:21:51 +03:00
config SAMSUNG_GPIO_EXTRA
int "Number of additional GPIO pins"
2011-11-03 11:15:38 +04:00
default 128 if SAMSUNG_GPIO_EXTRA128
default 64 if SAMSUNG_GPIO_EXTRA64
2010-01-11 06:21:51 +03:00
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.
2011-11-03 11:15:38 +04:00
config SAMSUNG_GPIO_EXTRA64
bool
config SAMSUNG_GPIO_EXTRA128
bool
2010-01-29 12:02:17 +03:00
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.
2012-04-18 07:05:19 +04:00
# uart options
config S5P_DEV_UART
def_bool y
depends on (ARCH_S5P64X0 || ARCH_S5PC100 || ARCH_S5PV210)
2010-01-14 02:30:31 +03:00
# 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.
2010-01-05 20:45:09 +03:00
# 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
2010-06-10 10:22:16 +04:00
config S3C_DEV_HSMMC3
bool
help
Compile in platform device definitions for HSMMC channel 3
2010-05-04 15:12:32 +04:00
config S3C_DEV_HWMON
bool
help
Compile in platform device definitions for HWMON
2010-01-05 20:45:09 +03:00
config S3C_DEV_I2C1
bool
help
Compile in platform device definitions for I2C channel 1
2010-05-20 10:13:06 +04:00
config S3C_DEV_I2C2
bool
help
Compile in platform device definitions for I2C channel 2
2010-10-12 02:49:24 +04:00
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
2010-01-05 20:45:09 +03:00
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
2010-05-19 10:42:29 +04:00
config S3C_DEV_WDT
bool
2012-02-03 09:29:23 +04:00
default y if ARCH_S3C24XX
2010-05-19 10:42:29 +04:00
help
Complie in platform device definition for Watchdog Timer
2010-01-05 20:45:09 +03:00
config S3C_DEV_NAND
bool
help
Compile in platform device definition for NAND controller
2010-05-20 10:59:05 +04:00
config S3C_DEV_ONENAND
bool
help
Compile in platform device definition for OneNAND controller
2010-05-18 09:58:56 +04:00
config S3C_DEV_RTC
bool
help
Complie in platform device definition for RTC
2010-05-13 17:06:36 +04:00
config SAMSUNG_DEV_ADC
bool
help
Compile in platform device definition for ADC controller
2010-06-08 11:38:20 +04:00
config SAMSUNG_DEV_IDE
bool
help
Compile in platform device definitions for IDE
2011-12-23 05:14:31 +04:00
config S3C64XX_DEV_SPI0
2010-01-28 11:14:49 +03:00
bool
help
Compile in platform device definitions for S3C64XX's type
2011-12-23 05:14:31 +04:00
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
2010-01-28 11:14:49 +03:00
2010-05-19 09:36:28 +04:00
config SAMSUNG_DEV_TS
2010-05-04 15:12:44 +04:00
bool
help
2010-05-19 09:36:28 +04:00
Common in platform device definitions for touchscreen device
2010-05-04 15:12:44 +04:00
2010-08-06 14:26:10 +04:00
config SAMSUNG_DEV_KEYPAD
bool
help
Compile in platform device definitions for keypad
2011-02-28 19:54:51 +03:00
config SAMSUNG_DEV_PWM
bool
2012-02-03 09:29:23 +04:00
default y if ARCH_S3C24XX
2011-02-28 19:54:51 +03:00
help
Compile in platform device definition for PWM Timer
2011-07-20 18:44:21 +04:00
config SAMSUNG_DEV_BACKLIGHT
bool
depends on SAMSUNG_DEV_PWM
help
Compile in platform device definition LCD backlight with PWM Timer
2012-04-18 07:39:10 +04:00
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
2011-02-28 19:54:51 +03:00
config S3C24XX_PWM
bool "PWM device support"
2012-08-04 11:52:19 +04:00
select PWM
select PWM_SAMSUNG
2011-02-28 19:54:51 +03:00
help
Support for exporting the PWM timer blocks via the pwm device
system
2012-11-22 09:29:18 +04:00
config S3C_SETUP_CAMIF
bool
help
Compile in common setup code for S3C CAMIF devices
2010-01-29 12:02:17 +03:00
# DMA
config S3C_DMA
bool
help
Internal configuration for S3C DMA core
2013-06-18 20:24:12 +04:00
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.
2013-06-15 04:01:49 +04:00
endif
2011-09-02 04:44:34 +04:00
config SAMSUNG_DMADEV
2010-05-18 06:59:06 +04:00
bool
ARM: config: sort select statements alphanumerically
As suggested by Andrew Morton:
This is a pet peeve of mine. Any time there's a long list of items
(header file inclusions, kconfig entries, array initalisers, etc) and
someone wants to add a new item, they *always* go and stick it at the
end of the list.
Guys, don't do this. Either put the new item into a randomly-chosen
position or, probably better, alphanumerically sort the list.
lets sort all our select statements alphanumerically. This commit was
created by the following perl:
while (<>) {
while (/\\\s*$/) {
$_ .= <>;
}
undef %selects if /^\s*config\s+/;
if (/^\s+select\s+(\w+).*/) {
if (defined($selects{$1})) {
if ($selects{$1} eq $_) {
print STDERR "Warning: removing duplicated $1 entry\n";
} else {
print STDERR "Error: $1 differently selected\n".
"\tOld: $selects{$1}\n".
"\tNew: $_\n";
exit 1;
}
}
$selects{$1} = $_;
next;
}
if (%selects and (/^\s*$/ or /^\s+help/ or /^\s+---help---/ or
/^endif/ or /^endchoice/)) {
foreach $k (sort (keys %selects)) {
print "$selects{$k}";
}
undef %selects;
}
print;
}
if (%selects) {
foreach $k (sort (keys %selects)) {
print "$selects{$k}";
}
}
It found two duplicates:
Warning: removing duplicated S5P_SETUP_MIPIPHY entry
Warning: removing duplicated HARDIRQS_SW_RESEND entry
and they are identical duplicates, hence the shrinkage in the diffstat
of two lines.
We have four testers reporting success of this change (Tony, Stephen,
Linus and Sekhar.)
Acked-by: Jason Cooper <jason@lakedaemon.net>
Acked-by: Tony Lindgren <tony@atomide.com>
Acked-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Acked-by: Sekhar Nori <nsekhar@ti.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2012-10-06 20:12:25 +04:00
select ARM_AMBA
2011-09-02 04:44:34 +04:00
select DMADEVICES
2012-05-12 11:40:52 +04:00
select PL330_DMA if (ARCH_EXYNOS5 || ARCH_EXYNOS4 || CPU_S5PV210 || CPU_S5PC100 || \
2011-09-02 04:44:34 +04:00
CPU_S5P6450 || CPU_S5P6440)
2010-05-18 06:59:06 +04:00
help
2011-09-02 04:44:34 +04:00
Use DMA device engine for PL330 DMAC.
2010-05-18 06:59:06 +04:00
2013-06-15 04:01:49 +04:00
config S5P_DEV_MFC
bool
help
Compile in setup memory (init) code for MFC
2010-01-20 06:29:25 +03:00
comment "Power management"
config SAMSUNG_PM_DEBUG
bool "S3C2410 PM Suspend debug"
2014-03-13 19:42:48 +04:00
depends on PM && DEBUG_KERNEL && DEBUG_S3C_UART
2010-01-20 06:29:25 +03:00
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"
2014-03-18 13:02:26 +04:00
depends on PM
select CRC32
2010-01-20 06:29:25 +03:00
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>
2010-05-20 09:05:33 +04:00
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>
2013-06-17 18:45:33 +04:00
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.
2012-04-16 08:57:38 +04:00
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.
2011-08-17 01:28:54 +04:00
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
2012-11-22 09:24:04 +04:00
default "3" if DEBUG_S3C_UART3
2011-08-17 01:28:54 +04:00
2009-11-10 03:14:58 +03:00
endif