Loading...
1# Copyright 2008 Openmoko, Inc.
2# Simtec Electronics, Ben Dooks <ben@simtec.co.uk>
3#
4# Licensed under GPLv2
5
6# temporary until we can eliminate all drivers using it.
7config PLAT_S3C64XX
8 bool
9 depends on ARCH_S3C64XX
10 select SAMSUNG_WAKEMASK
11 select PM_GENERIC_DOMAINS
12 default y
13 help
14 Base platform code for any Samsung S3C64XX device
15
16
17# Configuration options for the S3C6410 CPU
18
19config CPU_S3C6400
20 bool
21 help
22 Enable S3C6400 CPU support
23
24config CPU_S3C6410
25 bool
26 help
27 Enable S3C6410 CPU support
28
29config S3C64XX_DMA
30 bool "S3C64XX DMA"
31 select S3C_DMA
32
33config S3C64XX_SETUP_SDHCI
34 select S3C64XX_SETUP_SDHCI_GPIO
35 bool
36 help
37 Internal configuration for default SDHCI setup for S3C6400 and
38 S3C6410 SoCs.
39
40config S3C64XX_DEV_ONENAND1
41 bool
42 help
43 Compile in platform device definition for OneNAND1 controller
44
45# platform specific device setup
46
47config S3C64XX_SETUP_I2C0
48 bool
49 default y
50 help
51 Common setup code for i2c bus 0.
52
53 Note, currently since i2c0 is always compiled, this setup helper
54 is always compiled with it.
55
56config S3C64XX_SETUP_I2C1
57 bool
58 help
59 Common setup code for i2c bus 1.
60
61config S3C64XX_SETUP_IDE
62 bool
63 help
64 Common setup code for S3C64XX IDE.
65
66config S3C64XX_SETUP_FB_24BPP
67 bool
68 help
69 Common setup code for S3C64XX with an 24bpp RGB display helper.
70
71config S3C64XX_SETUP_KEYPAD
72 bool
73 help
74 Common setup code for S3C64XX KEYPAD GPIO configurations
75
76config S3C64XX_SETUP_SDHCI_GPIO
77 bool
78 help
79 Common setup code for S3C64XX SDHCI GPIO configurations
80
81config S3C64XX_SETUP_SPI
82 bool
83 help
84 Common setup code for SPI GPIO configurations
85
86config S3C64XX_SETUP_USB_PHY
87 bool
88 help
89 Common setup code for USB PHY controller
90
91# S36400 Macchine support
92
93config MACH_SMDK6400
94 bool "SMDK6400"
95 select CPU_S3C6400
96 select S3C_DEV_HSMMC
97 select S3C_DEV_NAND
98 select S3C64XX_SETUP_SDHCI
99 help
100 Machine support for the Samsung SMDK6400
101
102# S3C6410 machine support
103
104config MACH_ANW6410
105 bool "A&W6410"
106 select CPU_S3C6410
107 select S3C_DEV_FB
108 select S3C64XX_SETUP_FB_24BPP
109 help
110 Machine support for the A&W6410
111
112config MACH_MINI6410
113 bool "MINI6410"
114 select CPU_S3C6410
115 select S3C_DEV_HSMMC
116 select S3C_DEV_HSMMC1
117 select S3C64XX_SETUP_SDHCI
118 select S3C_DEV_USB_HOST
119 select S3C_DEV_NAND
120 select S3C_DEV_FB
121 select S3C64XX_SETUP_FB_24BPP
122 select SAMSUNG_DEV_ADC
123 select SAMSUNG_DEV_TS
124 help
125 Machine support for the FriendlyARM MINI6410
126
127config MACH_REAL6410
128 bool "REAL6410"
129 select CPU_S3C6410
130 select S3C_DEV_HSMMC
131 select S3C_DEV_HSMMC1
132 select S3C64XX_SETUP_SDHCI
133 select S3C_DEV_FB
134 select S3C64XX_SETUP_FB_24BPP
135 select S3C_DEV_NAND
136 select SAMSUNG_DEV_ADC
137 select SAMSUNG_DEV_TS
138 select S3C_DEV_USB_HOST
139 help
140 Machine support for the CoreWind REAL6410
141
142config MACH_SMDK6410
143 bool "SMDK6410"
144 select CPU_S3C6410
145 select SAMSUNG_DEV_ADC
146 select S3C_DEV_HSMMC
147 select S3C_DEV_HSMMC1
148 select S3C_DEV_I2C1
149 select SAMSUNG_DEV_IDE
150 select S3C_DEV_FB
151 select S3C_DEV_RTC
152 select SAMSUNG_DEV_TS
153 select S3C_DEV_USB_HOST
154 select S3C_DEV_USB_HSOTG
155 select S3C_DEV_WDT
156 select SAMSUNG_DEV_BACKLIGHT
157 select SAMSUNG_DEV_KEYPAD
158 select SAMSUNG_DEV_PWM
159 select HAVE_S3C2410_WATCHDOG if WATCHDOG
160 select S3C64XX_SETUP_SDHCI
161 select S3C64XX_SETUP_I2C1
162 select S3C64XX_SETUP_IDE
163 select S3C64XX_SETUP_FB_24BPP
164 select S3C64XX_SETUP_KEYPAD
165 select S3C64XX_SETUP_USB_PHY
166 help
167 Machine support for the Samsung SMDK6410
168
169# At least some of the SMDK6410s were shipped with the card detect
170# for the MMC/SD slots connected to the same input. This means that
171# either the boards need to be altered to have channel0 to an alternate
172# configuration or that only one slot can be used.
173
174choice
175 prompt "SMDK6410 MMC/SD slot setup"
176 depends on MACH_SMDK6410
177
178config SMDK6410_SD_CH0
179 bool "Use channel 0 only"
180 depends on MACH_SMDK6410
181 help
182 Select CON7 (channel 0) as the MMC/SD slot, as
183 at least some SMDK6410 boards come with the
184 resistors fitted so that the card detects for
185 channels 0 and 1 are the same.
186
187config SMDK6410_SD_CH1
188 bool "Use channel 1 only"
189 depends on MACH_SMDK6410
190 help
191 Select CON6 (channel 1) as the MMC/SD slot, as
192 at least some SMDK6410 boards come with the
193 resistors fitted so that the card detects for
194 channels 0 and 1 are the same.
195
196endchoice
197
198config SMDK6410_WM1190_EV1
199 bool "Support Wolfson Microelectronics 1190-EV1 PMIC card"
200 depends on MACH_SMDK6410
201 select REGULATOR
202 select REGULATOR_WM8350
203 select SAMSUNG_GPIO_EXTRA64
204 select MFD_WM8350_I2C
205 select MFD_WM8350_CONFIG_MODE_0
206 select MFD_WM8350_CONFIG_MODE_3
207 select MFD_WM8352_CONFIG_MODE_0
208 help
209 The Wolfson Microelectronics 1190-EV1 is a WM835x based PMIC
210 and audio daughtercard for the Samsung SMDK6410 reference
211 platform. Enabling this option will build support for this
212 module into the kernel. The presence of the module will be
213 detected at runtime so the resulting kernel can be used
214 with or without the 1190-EV1 fitted.
215
216config SMDK6410_WM1192_EV1
217 bool "Support Wolfson Microelectronics 1192-EV1 PMIC card"
218 depends on MACH_SMDK6410
219 select REGULATOR
220 select REGULATOR_WM831X
221 select SAMSUNG_GPIO_EXTRA64
222 select MFD_WM831X
223 select MFD_WM831X_I2C
224 help
225 The Wolfson Microelectronics 1192-EV1 is a WM831x based PMIC
226 daughtercard for the Samsung SMDK6410 reference platform.
227 Enabling this option will build support for this module into
228 the kernel. The presence of the daughtercard will be
229 detected at runtime so the resulting kernel can be used
230 with or without the 1192-EV1 fitted.
231
232config MACH_NCP
233 bool "NCP"
234 select CPU_S3C6410
235 select S3C_DEV_I2C1
236 select S3C_DEV_HSMMC1
237 select S3C64XX_SETUP_I2C1
238 help
239 Machine support for the Samsung NCP
240
241config MACH_HMT
242 bool "Airgoo HMT"
243 select CPU_S3C6410
244 select S3C_DEV_FB
245 select S3C_DEV_NAND
246 select S3C_DEV_USB_HOST
247 select S3C64XX_SETUP_FB_24BPP
248 select SAMSUNG_DEV_PWM
249 help
250 Machine support for the Airgoo HMT
251
252config MACH_SMARTQ
253 bool
254 select CPU_S3C6410
255 select S3C_DEV_HSMMC
256 select S3C_DEV_HSMMC1
257 select S3C_DEV_HSMMC2
258 select S3C_DEV_FB
259 select S3C_DEV_HWMON
260 select S3C_DEV_RTC
261 select S3C_DEV_USB_HSOTG
262 select S3C_DEV_USB_HOST
263 select S3C64XX_SETUP_SDHCI
264 select S3C64XX_SETUP_FB_24BPP
265 select S3C64XX_SETUP_USB_PHY
266 select SAMSUNG_DEV_ADC
267 select SAMSUNG_DEV_PWM
268 select SAMSUNG_DEV_TS
269 help
270 Shared machine support for SmartQ 5/7
271
272config MACH_SMARTQ5
273 bool "SmartQ 5"
274 select MACH_SMARTQ
275 help
276 Machine support for the SmartQ 5
277
278config MACH_SMARTQ7
279 bool "SmartQ 7"
280 select MACH_SMARTQ
281 help
282 Machine support for the SmartQ 7
283
284config MACH_WLF_CRAGG_6410
285 bool "Wolfson Cragganmore 6410"
286 select CPU_S3C6410
287 select S3C64XX_SETUP_SDHCI
288 select S3C64XX_SETUP_I2C1
289 select S3C64XX_SETUP_IDE
290 select S3C64XX_SETUP_FB_24BPP
291 select S3C64XX_SETUP_KEYPAD
292 select S3C64XX_SETUP_SPI
293 select S3C64XX_SETUP_USB_PHY
294 select SAMSUNG_DEV_ADC
295 select SAMSUNG_DEV_KEYPAD
296 select S3C_DEV_USB_HOST
297 select S3C_DEV_USB_HSOTG
298 select S3C_DEV_HSMMC
299 select S3C_DEV_HSMMC1
300 select S3C_DEV_HSMMC2
301 select S3C_DEV_I2C1
302 select S3C_DEV_WDT
303 select S3C_DEV_RTC
304 select S3C64XX_DEV_SPI0
305 select SAMSUNG_GPIO_EXTRA128
306 select I2C
307 select LEDS_GPIO_REGISTER
308 help
309 Machine support for the Wolfson Cragganmore S3C6410 variant.
1# SPDX-License-Identifier: GPL-2.0
2#
3# Copyright 2008 Openmoko, Inc.
4# Simtec Electronics, Ben Dooks <ben@simtec.co.uk>
5
6menuconfig ARCH_S3C64XX
7 bool "Samsung S3C64XX"
8 depends on ARCH_MULTI_V6
9 select ARM_AMBA
10 select ARM_VIC
11 select CLKSRC_SAMSUNG_PWM
12 select COMMON_CLK_SAMSUNG
13 select GPIO_SAMSUNG if ATAGS
14 select GPIOLIB
15 select HAVE_S3C2410_I2C if I2C
16 select HAVE_S3C2410_WATCHDOG if WATCHDOG
17 select HAVE_TCM
18 select PLAT_SAMSUNG
19 select PM_GENERIC_DOMAINS if PM
20 select S3C_DEV_NAND if ATAGS
21 select S3C_GPIO_TRACK if ATAGS
22 select SAMSUNG_ATAGS if ATAGS
23 select SAMSUNG_WAKEMASK if PM
24 select SAMSUNG_WDT_RESET
25 help
26 Samsung S3C64XX series based systems
27
28if ARCH_S3C64XX
29
30# Configuration options for the S3C6410 CPU
31
32config CPU_S3C6400
33 bool
34 help
35 Enable S3C6400 CPU support
36
37config CPU_S3C6410
38 bool
39 help
40 Enable S3C6410 CPU support
41
42config S3C64XX_PL080
43 def_bool DMADEVICES
44 select AMBA_PL08X
45
46config S3C64XX_SETUP_SDHCI
47 bool
48 select S3C64XX_SETUP_SDHCI_GPIO
49 help
50 Internal configuration for default SDHCI setup for S3C6400 and
51 S3C6410 SoCs.
52
53config S3C64XX_DEV_ONENAND1
54 bool
55 help
56 Compile in platform device definition for OneNAND1 controller
57
58config SAMSUNG_DEV_BACKLIGHT
59 bool
60 depends on SAMSUNG_DEV_PWM
61 help
62 Compile in platform device definition LCD backlight with PWM Timer
63
64# platform specific device setup
65
66config S3C64XX_SETUP_I2C0
67 bool
68 default y
69 help
70 Common setup code for i2c bus 0.
71
72 Note, currently since i2c0 is always compiled, this setup helper
73 is always compiled with it.
74
75config S3C64XX_SETUP_I2C1
76 bool
77 help
78 Common setup code for i2c bus 1.
79
80config S3C64XX_SETUP_IDE
81 bool
82 help
83 Common setup code for S3C64XX IDE.
84
85config S3C64XX_SETUP_FB_24BPP
86 bool
87 help
88 Common setup code for S3C64XX with an 24bpp RGB display helper.
89
90config S3C64XX_SETUP_KEYPAD
91 bool
92 help
93 Common setup code for S3C64XX KEYPAD GPIO configurations
94
95config S3C64XX_SETUP_SDHCI_GPIO
96 bool
97 help
98 Common setup code for S3C64XX SDHCI GPIO configurations
99
100config S3C64XX_SETUP_SPI
101 bool
102 help
103 Common setup code for SPI GPIO configurations
104
105config S3C64XX_SETUP_USB_PHY
106 bool
107 help
108 Common setup code for USB PHY controller
109
110# S36400 Macchine support
111
112config MACH_SMDK6400
113 bool "SMDK6400"
114 depends on ATAGS
115 select CPU_S3C6400
116 select S3C64XX_SETUP_SDHCI
117 select S3C_DEV_HSMMC1
118 help
119 Machine support for the Samsung SMDK6400
120
121# S3C6410 machine support
122
123config MACH_ANW6410
124 bool "A&W6410"
125 depends on ATAGS
126 select CPU_S3C6410
127 select S3C64XX_SETUP_FB_24BPP
128 select S3C_DEV_FB
129 help
130 Machine support for the A&W6410
131
132config MACH_MINI6410
133 bool "MINI6410"
134 depends on ATAGS
135 select CPU_S3C6410
136 select S3C64XX_SETUP_FB_24BPP
137 select S3C64XX_SETUP_SDHCI
138 select S3C_DEV_FB
139 select S3C_DEV_HSMMC
140 select S3C_DEV_HSMMC1
141 select S3C_DEV_NAND
142 select S3C_DEV_USB_HOST
143 select SAMSUNG_DEV_ADC
144 select SAMSUNG_DEV_TS
145 help
146 Machine support for the FriendlyARM MINI6410
147
148config MACH_REAL6410
149 bool "REAL6410"
150 depends on ATAGS
151 select CPU_S3C6410
152 select S3C64XX_SETUP_FB_24BPP
153 select S3C64XX_SETUP_SDHCI
154 select S3C_DEV_FB
155 select S3C_DEV_HSMMC
156 select S3C_DEV_HSMMC1
157 select S3C_DEV_NAND
158 select S3C_DEV_USB_HOST
159 select SAMSUNG_DEV_ADC
160 select SAMSUNG_DEV_TS
161 help
162 Machine support for the CoreWind REAL6410
163
164config MACH_SMDK6410
165 bool "SMDK6410"
166 depends on ATAGS
167 select CPU_S3C6410
168 select HAVE_S3C2410_WATCHDOG if WATCHDOG
169 select S3C64XX_SETUP_FB_24BPP
170 select S3C64XX_SETUP_I2C1
171 select S3C64XX_SETUP_IDE
172 select S3C64XX_SETUP_KEYPAD
173 select S3C64XX_SETUP_SDHCI
174 select S3C64XX_SETUP_USB_PHY
175 select S3C_DEV_FB
176 select S3C_DEV_HSMMC
177 select S3C_DEV_HSMMC1
178 select S3C_DEV_I2C1
179 select S3C_DEV_RTC
180 select S3C_DEV_USB_HOST
181 select S3C_DEV_USB_HSOTG
182 select S3C_DEV_WDT
183 select SAMSUNG_DEV_ADC
184 select SAMSUNG_DEV_BACKLIGHT
185 select SAMSUNG_DEV_IDE
186 select SAMSUNG_DEV_KEYPAD
187 select SAMSUNG_DEV_PWM
188 select SAMSUNG_DEV_TS
189 help
190 Machine support for the Samsung SMDK6410
191
192# At least some of the SMDK6410s were shipped with the card detect
193# for the MMC/SD slots connected to the same input. This means that
194# either the boards need to be altered to have channel0 to an alternate
195# configuration or that only one slot can be used.
196
197choice
198 prompt "SMDK6410 MMC/SD slot setup"
199 depends on MACH_SMDK6410
200
201config SMDK6410_SD_CH0
202 bool "Use channel 0 only"
203 depends on MACH_SMDK6410
204 help
205 Select CON7 (channel 0) as the MMC/SD slot, as
206 at least some SMDK6410 boards come with the
207 resistors fitted so that the card detects for
208 channels 0 and 1 are the same.
209
210config SMDK6410_SD_CH1
211 bool "Use channel 1 only"
212 depends on MACH_SMDK6410
213 help
214 Select CON6 (channel 1) as the MMC/SD slot, as
215 at least some SMDK6410 boards come with the
216 resistors fitted so that the card detects for
217 channels 0 and 1 are the same.
218
219endchoice
220
221config SMDK6410_WM1190_EV1
222 bool "Support Wolfson Microelectronics 1190-EV1 PMIC card"
223 depends on MACH_SMDK6410
224 depends on I2C=y
225 select MFD_WM8350_I2C
226 select REGULATOR
227 select REGULATOR_WM8350
228 help
229 The Wolfson Microelectronics 1190-EV1 is a WM835x based PMIC
230 and audio daughtercard for the Samsung SMDK6410 reference
231 platform. Enabling this option will build support for this
232 module into the kernel. The presence of the module will be
233 detected at runtime so the resulting kernel can be used
234 with or without the 1190-EV1 fitted.
235
236config SMDK6410_WM1192_EV1
237 bool "Support Wolfson Microelectronics 1192-EV1 PMIC card"
238 depends on MACH_SMDK6410
239 depends on I2C=y
240 select MFD_WM831X
241 select MFD_WM831X_I2C
242 select REGULATOR
243 select REGULATOR_WM831X
244 help
245 The Wolfson Microelectronics 1192-EV1 is a WM831x based PMIC
246 daughtercard for the Samsung SMDK6410 reference platform.
247 Enabling this option will build support for this module into
248 the kernel. The presence of the daughtercard will be
249 detected at runtime so the resulting kernel can be used
250 with or without the 1192-EV1 fitted.
251
252config MACH_NCP
253 bool "NCP"
254 depends on ATAGS
255 select CPU_S3C6410
256 select S3C64XX_SETUP_I2C1
257 select S3C_DEV_HSMMC1
258 select S3C_DEV_I2C1
259 help
260 Machine support for the Samsung NCP
261
262config MACH_HMT
263 bool "Airgoo HMT"
264 depends on ATAGS
265 select CPU_S3C6410
266 select S3C64XX_SETUP_FB_24BPP
267 select S3C_DEV_FB
268 select S3C_DEV_NAND
269 select S3C_DEV_USB_HOST
270 select SAMSUNG_DEV_PWM
271 help
272 Machine support for the Airgoo HMT
273
274config MACH_SMARTQ
275 bool
276 select CPU_S3C6410
277 select S3C64XX_SETUP_FB_24BPP
278 select S3C64XX_SETUP_SDHCI
279 select S3C64XX_SETUP_USB_PHY
280 select S3C_DEV_FB
281 select S3C_DEV_HSMMC
282 select S3C_DEV_HSMMC1
283 select S3C_DEV_HSMMC2
284 select S3C_DEV_HWMON
285 select S3C_DEV_RTC
286 select S3C_DEV_USB_HOST
287 select S3C_DEV_USB_HSOTG
288 select SAMSUNG_DEV_ADC
289 select SAMSUNG_DEV_PWM
290 select SAMSUNG_DEV_TS
291 help
292 Shared machine support for SmartQ 5/7
293
294config MACH_SMARTQ5
295 bool "SmartQ 5"
296 depends on ATAGS
297 select MACH_SMARTQ
298 help
299 Machine support for the SmartQ 5
300
301config MACH_SMARTQ7
302 bool "SmartQ 7"
303 depends on ATAGS
304 select MACH_SMARTQ
305 help
306 Machine support for the SmartQ 7
307
308config MACH_WLF_CRAGG_6410
309 bool "Wolfson Cragganmore 6410"
310 depends on ATAGS
311 depends on I2C=y
312 select CPU_S3C6410
313 select LEDS_GPIO_REGISTER
314 select S3C64XX_DEV_SPI0
315 select S3C64XX_SETUP_FB_24BPP
316 select S3C64XX_SETUP_I2C1
317 select S3C64XX_SETUP_IDE
318 select S3C64XX_SETUP_KEYPAD
319 select S3C64XX_SETUP_SDHCI
320 select S3C64XX_SETUP_SPI
321 select S3C64XX_SETUP_USB_PHY
322 select S3C_DEV_FB
323 select S3C_DEV_HSMMC
324 select S3C_DEV_HSMMC1
325 select S3C_DEV_HSMMC2
326 select S3C_DEV_I2C1
327 select S3C_DEV_RTC
328 select S3C_DEV_USB_HOST
329 select S3C_DEV_USB_HSOTG
330 select S3C_DEV_WDT
331 select SAMSUNG_DEV_ADC
332 select SAMSUNG_DEV_KEYPAD
333 select SAMSUNG_DEV_PWM
334 help
335 Machine support for the Wolfson Cragganmore S3C6410 variant.
336
337config MACH_S3C64XX_DT
338 bool "Samsung S3C6400/S3C6410 machine using Device Tree"
339 select TIMER_OF
340 select CPU_S3C6400
341 select CPU_S3C6410
342 select PINCTRL
343 select PINCTRL_S3C64XX
344 help
345 Machine support for Samsung S3C6400/S3C6410 machines with Device Tree
346 enabled.
347 Select this if a fdt blob is available for your S3C64XX SoC based
348 board.
349 Note: This is under development and not all peripherals can be
350 supported with this machine file.
351
352endif