blob: 9bd2776e7d05fba57e937f3b7cd469f80cd741ff [file] [log] [blame]
Ben Dookscf383672009-11-10 00:14:58 +00001# arch/arm/plat-samsung/Kconfig
2#
3# Copyright 2009 Simtec Electronics
4#
5# Licensed under GPLv2
6
7config PLAT_SAMSUNG
8 bool
Tomasz Figad78c16c2014-07-02 19:40:44 +02009 depends on PLAT_S3C24XX || ARCH_S3C64XX || ARCH_EXYNOS || ARCH_S5PV210
Ben Dookscf383672009-11-10 00:14:58 +000010 default y
Russell Kingb1b3f492012-10-06 17:12:25 +010011 select GENERIC_IRQ_CHIP
Uwe Kleine-Königce816fa2014-04-07 15:39:19 -070012 select NO_IOPORT_MAP
Ben Dookscf383672009-11-10 00:14:58 +000013 help
14 Base platform code for all Samsung SoC based systems
15
Amit Daniel Kachhap89693012013-07-24 14:06:13 +090016config SAMSUNG_PM
17 bool
Tomasz Figad78c16c2014-07-02 19:40:44 +020018 depends on PM && (PLAT_S3C24XX || ARCH_S3C64XX)
Amit Daniel Kachhap89693012013-07-24 14:06:13 +090019 default y
20 help
21 Base platform power management code for samsung code
22
Ben Dookscf383672009-11-10 00:14:58 +000023if PLAT_SAMSUNG
Rob Herringe509b282014-06-10 09:06:09 -050024menu "Samsung Common options"
Ben Dookscf383672009-11-10 00:14:58 +000025
Ben Dooks89f1fa02010-01-29 09:02:17 +000026# boot configurations
27
28comment "Boot options"
29
Ben Dooks89f1fa02010-01-29 09:02:17 +000030config S3C_LOWLEVEL_UART_PORT
31 int "S3C UART to use for low-level messages"
Rob Herringe509b282014-06-10 09:06:09 -050032 depends on ARCH_S3C64XX
Ben Dooks89f1fa02010-01-29 09:02:17 +000033 default 0
34 help
35 Choice of which UART port to use for the low-level messages,
36 such as the `Uncompressing...` at start time. The value of
37 this configuration should be between zero and two. The port
38 must have been initialised by the boot-loader before use.
39
Tomasz Figacd8dc7a2013-06-15 09:01:49 +090040config SAMSUNG_ATAGS
41 def_bool n
42 depends on !ARCH_MULTIPLATFORM
43 depends on ATAGS
44 help
45 This option enables ATAGS based boot support code for
46 Samsung platforms, including static platform devices, legacy
47 clock, timer and interrupt initialization, etc.
48
49 Platforms that support only DT based boot need not to select
50 this option.
51
52if SAMSUNG_ATAGS
53
Ben Dooks89f1fa02010-01-29 09:02:17 +000054config S3C_GPIO_SPACE
55 int "Space between gpio banks"
56 default 0
57 help
58 Add a number of spare GPIO entries between each bank for debugging
59 purposes. This allows any problems where an counter overflows from
60 one bank to another to be caught, at the expense of using a little
61 more memory.
62
63config S3C_GPIO_TRACK
64 bool
65 help
66 Internal configuration option to enable the s3c specific gpio
67 chip tracking if the platform requires it.
68
Maurus Cuelenaere3929e1e2010-01-14 00:30:31 +010069# ADC driver
70
71config S3C_ADC
72 bool "ADC common driver support"
73 help
74 Core support for the ADC block found in the Samsung SoC systems
75 for drivers such as the touchscreen and hwmon to use to share
76 this resource.
77
Ben Dooksb6a60412010-01-06 02:45:09 +090078# device definitions to compile in
79
80config S3C_DEV_HSMMC
81 bool
82 help
83 Compile in platform device definitions for HSMMC code
84
85config S3C_DEV_HSMMC1
86 bool
87 help
88 Compile in platform device definitions for HSMMC channel 1
89
90config S3C_DEV_HSMMC2
91 bool
92 help
93 Compile in platform device definitions for HSMMC channel 2
94
Hyuk Leeb3c674b2010-06-10 15:22:16 +090095config S3C_DEV_HSMMC3
96 bool
97 help
98 Compile in platform device definitions for HSMMC channel 3
99
Maurus Cuelenaere6cd82ff2010-05-04 13:12:32 +0200100config S3C_DEV_HWMON
101 bool
102 help
103 Compile in platform device definitions for HWMON
104
Ben Dooksb6a60412010-01-06 02:45:09 +0900105config S3C_DEV_I2C1
106 bool
107 help
108 Compile in platform device definitions for I2C channel 1
109
Marek Szyprowskic8d833b2010-05-20 08:13:06 +0200110config S3C_DEV_I2C2
111 bool
112 help
113 Compile in platform device definitions for I2C channel 2
114
Kyungmin Parkb7a98252010-10-12 07:49:24 +0900115config S3C_DEV_I2C3
116 bool
117 help
118 Compile in platform device definition for I2C controller 3
119
120config S3C_DEV_I2C4
121 bool
122 help
123 Compile in platform device definition for I2C controller 4
124
125config S3C_DEV_I2C5
126 bool
127 help
128 Compile in platform device definition for I2C controller 5
129
130config S3C_DEV_I2C6
131 bool
132 help
133 Compile in platform device definition for I2C controller 6
134
135config S3C_DEV_I2C7
136 bool
137 help
138 Compile in platform device definition for I2C controller 7
139
Ben Dooksb6a60412010-01-06 02:45:09 +0900140config S3C_DEV_FB
141 bool
142 help
143 Compile in platform device definition for framebuffer
144
145config S3C_DEV_USB_HOST
146 bool
147 help
148 Compile in platform device definition for USB host.
149
150config S3C_DEV_USB_HSOTG
151 bool
152 help
153 Compile in platform device definition for USB high-speed OtG
154
Banajit Goswamie1d5c932010-05-19 15:42:29 +0900155config S3C_DEV_WDT
156 bool
Kukjin Kimb130d5c2012-02-03 14:29:23 +0900157 default y if ARCH_S3C24XX
Banajit Goswamie1d5c932010-05-19 15:42:29 +0900158 help
159 Complie in platform device definition for Watchdog Timer
160
Ben Dooksb6a60412010-01-06 02:45:09 +0900161config S3C_DEV_NAND
162 bool
163 help
164 Compile in platform device definition for NAND controller
165
Marek Szyprowski999304b2010-05-20 08:59:05 +0200166config S3C_DEV_ONENAND
167 bool
168 help
169 Compile in platform device definition for OneNAND controller
170
Atul Dahiyaadc0950c2010-05-18 14:58:56 +0900171config S3C_DEV_RTC
172 bool
173 help
174 Complie in platform device definition for RTC
175
Naveen Krishna4f7cdc32010-05-13 22:06:36 +0900176config SAMSUNG_DEV_ADC
177 bool
178 help
179 Compile in platform device definition for ADC controller
180
Abhilash Kesavandb900052010-06-08 16:38:20 +0900181config SAMSUNG_DEV_IDE
182 bool
183 help
184 Compile in platform device definitions for IDE
185
Padmavathi Venna875a5932011-12-23 10:14:31 +0900186config S3C64XX_DEV_SPI0
Jassi Brar4b4c6622010-01-28 17:14:49 +0900187 bool
188 help
189 Compile in platform device definitions for S3C64XX's type
Padmavathi Venna875a5932011-12-23 10:14:31 +0900190 SPI controller 0
191
192config S3C64XX_DEV_SPI1
193 bool
194 help
195 Compile in platform device definitions for S3C64XX's type
196 SPI controller 1
197
198config S3C64XX_DEV_SPI2
199 bool
200 help
201 Compile in platform device definitions for S3C64XX's type
202 SPI controller 2
Jassi Brar4b4c6622010-01-28 17:14:49 +0900203
Ben Dooks2b6c02a2010-05-19 14:36:28 +0900204config SAMSUNG_DEV_TS
Maurus Cuelenaere909de0d2010-05-04 13:12:44 +0200205 bool
206 help
Ben Dooks2b6c02a2010-05-19 14:36:28 +0900207 Common in platform device definitions for touchscreen device
Maurus Cuelenaere909de0d2010-05-04 13:12:44 +0200208
Joonyoung Shim995c48a2010-08-06 19:26:10 +0900209config SAMSUNG_DEV_KEYPAD
210 bool
211 help
212 Compile in platform device definitions for keypad
213
Banajit Goswami2ce30132011-02-28 22:24:51 +0530214config SAMSUNG_DEV_PWM
215 bool
Kukjin Kimb130d5c2012-02-03 14:29:23 +0900216 default y if ARCH_S3C24XX
Banajit Goswami2ce30132011-02-28 22:24:51 +0530217 help
218 Compile in platform device definition for PWM Timer
219
Banajit Goswamif00207b2011-07-20 23:44:21 +0900220config SAMSUNG_DEV_BACKLIGHT
221 bool
222 depends on SAMSUNG_DEV_PWM
223 help
224 Compile in platform device definition LCD backlight with PWM Timer
225
Banajit Goswami2ce30132011-02-28 22:24:51 +0530226config S3C24XX_PWM
227 bool "PWM device support"
Arnd Bergmann35e79062012-08-04 07:52:19 +0000228 select PWM
229 select PWM_SAMSUNG
Banajit Goswami2ce30132011-02-28 22:24:51 +0530230 help
231 Support for exporting the PWM timer blocks via the pwm device
232 system
233
Sylwester Nawrockie51d5482012-11-22 14:29:18 +0900234config S3C_SETUP_CAMIF
235 bool
236 help
237 Compile in common setup code for S3C CAMIF devices
238
Ben Dooks89f1fa02010-01-29 09:02:17 +0000239# DMA
240
241config S3C_DMA
242 bool
243 help
244 Internal configuration for S3C DMA core
245
Tomasz Figa105dddb2013-06-19 01:24:12 +0900246config SAMSUNG_PM_GPIO
247 bool
248 default y if GPIO_SAMSUNG && PM
249 help
250 Include legacy GPIO power management code for platforms not using
251 pinctrl-samsung driver.
252
Boojin Kimaa0de002011-09-02 09:44:34 +0900253config SAMSUNG_DMADEV
Arnd Bergmann27873b02014-06-13 12:04:39 +0200254 bool "Use legacy Samsung DMA abstraction"
Kukjin Kimb8529ec2014-07-02 07:51:50 +0900255 depends on CPU_S5PV210 || ARCH_S3C64XX
Boojin Kimaa0de002011-09-02 09:44:34 +0900256 select DMADEVICES
Arnd Bergmann27873b02014-06-13 12:04:39 +0200257 default y
Jassi Brard800ede2010-05-18 11:59:06 +0900258 help
Boojin Kimaa0de002011-09-02 09:44:34 +0900259 Use DMA device engine for PL330 DMAC.
Jassi Brard800ede2010-05-18 11:59:06 +0900260
Arnd Bergmann27873b02014-06-13 12:04:39 +0200261endif
262
Tomasz Figacd8dc7a2013-06-15 09:01:49 +0900263config S5P_DEV_MFC
264 bool
265 help
266 Compile in setup memory (init) code for MFC
267
Ben Dooks80057452010-01-20 12:29:25 +0900268comment "Power management"
269
270config SAMSUNG_PM_DEBUG
Tomasz Figa2c054712014-09-24 02:10:04 +0900271 bool "Samsung PM Suspend debug"
272 depends on PM && DEBUG_KERNEL
273 depends on DEBUG_EXYNOS_UART || DEBUG_S3C24XX_UART || DEBUG_S3C2410_UART
Ben Dooks80057452010-01-20 12:29:25 +0900274 help
275 Say Y here if you want verbose debugging from the PM Suspend and
276 Resume code. See <file:Documentation/arm/Samsung-S3C24XX/Suspend.txt>
277 for more information.
278
279config S3C_PM_DEBUG_LED_SMDK
280 bool "SMDK LED suspend/resume debugging"
281 depends on PM && (MACH_SMDK6410)
282 help
283 Say Y here to enable the use of the SMDK LEDs on the baseboard
284 for debugging of the state of the suspend and resume process.
285
286 Note, this currently only works for S3C64XX based SMDK boards.
287
288config SAMSUNG_PM_CHECK
289 bool "S3C2410 PM Suspend Memory CRC"
Arnd Bergmann714e3302014-03-18 10:02:26 +0100290 depends on PM
291 select CRC32
Ben Dooks80057452010-01-20 12:29:25 +0900292 help
293 Enable the PM code's memory area checksum over sleep. This option
294 will generate CRCs of all blocks of memory, and store them before
295 going to sleep. The blocks are then checked on resume for any
296 errors.
297
298 Note, this can take several seconds depending on memory size
299 and CPU speed.
300
301 See <file:Documentation/arm/Samsung-S3C24XX/Suspend.txt>
302
303config SAMSUNG_PM_CHECK_CHUNKSIZE
304 int "S3C2410 PM Suspend CRC Chunksize (KiB)"
305 depends on PM && SAMSUNG_PM_CHECK
306 default 64
307 help
308 Set the chunksize in Kilobytes of the CRC for checking memory
309 corruption over suspend and resume. A smaller value will mean that
310 the CRC data block will take more memory, but wil identify any
311 faults with better precision.
312
313 See <file:Documentation/arm/Samsung-S3C24XX/Suspend.txt>
314
Ben Dooks0317e522010-05-20 14:05:33 +0900315config SAMSUNG_WAKEMASK
316 bool
317 depends on PM
318 help
319 Compile support for wakeup-mask controls found on the S3C6400
320 and above. This code allows a set of interrupt to wakeup-mask
321 mappings. See <plat/wakeup-mask.h>
322
Tomasz Figaa4658e52013-06-17 23:45:33 +0900323config SAMSUNG_WDT_RESET
324 bool
325 help
326 Compile support for system restart by triggering watchdog reset.
327 Used on SoCs that do not provide dedicated reset control.
328
Will Deacon952aeeb22011-08-16 22:28:54 +0100329config DEBUG_S3C_UART
330 depends on PLAT_SAMSUNG
331 int
332 default "0" if DEBUG_S3C_UART0
333 default "1" if DEBUG_S3C_UART1
334 default "2" if DEBUG_S3C_UART2
Olof Johansson5fa23dd2012-11-22 14:24:04 +0900335 default "3" if DEBUG_S3C_UART3
Will Deacon952aeeb22011-08-16 22:28:54 +0100336
Rob Herringe509b282014-06-10 09:06:09 -0500337endmenu
Ben Dookscf383672009-11-10 00:14:58 +0000338endif