blob: d4d1fa24e7f287d584e80b6e3a5d3190d661b7d4 [file] [log] [blame]
Ian Campbell2c7e3b92014-10-24 21:20:44 +01001if ARCH_SUNXI
2
3choice
4 prompt "Sunxi SoC Variant"
5
Ian Campbellc3be2792014-10-24 21:20:45 +01006config MACH_SUN4I
Ian Campbell2c7e3b92014-10-24 21:20:44 +01007 bool "sun4i (Allwinner A10)"
8 select CPU_V7
9 select SUPPORT_SPL
10
Ian Campbellc3be2792014-10-24 21:20:45 +010011config MACH_SUN5I
Ian Campbell2c7e3b92014-10-24 21:20:44 +010012 bool "sun5i (Allwinner A13)"
13 select CPU_V7
14 select SUPPORT_SPL
15
Ian Campbellc3be2792014-10-24 21:20:45 +010016config MACH_SUN6I
Ian Campbell2c7e3b92014-10-24 21:20:44 +010017 bool "sun6i (Allwinner A31)"
18 select CPU_V7
Hans de Goede8c2c9cf2014-10-25 20:18:10 +020019 select SUPPORT_SPL
Ian Campbell2c7e3b92014-10-24 21:20:44 +010020
Ian Campbellc3be2792014-10-24 21:20:45 +010021config MACH_SUN7I
Ian Campbell2c7e3b92014-10-24 21:20:44 +010022 bool "sun7i (Allwinner A20)"
23 select CPU_V7
Hans de Goedeea624e12014-11-14 09:34:30 +010024 select CPU_V7_HAS_NONSEC
25 select CPU_V7_HAS_VIRT
Ian Campbell2c7e3b92014-10-24 21:20:44 +010026 select SUPPORT_SPL
Hans de Goedeb366fb92014-10-24 20:12:04 +020027 select ARMV7_BOOT_SEC_DEFAULT if OLD_SUNXI_KERNEL_COMPAT
Ian Campbell2c7e3b92014-10-24 21:20:44 +010028
Ian Campbellc3be2792014-10-24 21:20:45 +010029config MACH_SUN8I
Ian Campbell2c7e3b92014-10-24 21:20:44 +010030 bool "sun8i (Allwinner A23)"
31 select CPU_V7
Hans de Goede08fd1472014-12-07 14:34:27 +010032 select SUPPORT_SPL
Ian Campbell2c7e3b92014-10-24 21:20:44 +010033
34endchoice
Maxime Ripard8a6564d2014-10-03 20:16:29 +080035
Hans de Goede08fd1472014-12-07 14:34:27 +010036if MACH_SUN6I || MACH_SUN8I
Hans de Goede37781a12014-11-15 19:46:39 +010037
38config DRAM_CLK
39 int "sun6i dram clock speed"
40 default 312
41 ---help---
42 Set the dram clock speed, valid range 240 - 480, must be a multiple
43 of 24.
44
45config DRAM_ZQ
46 int "sun6i dram zq value"
47 default 123
48 ---help---
49 Set the dram zq value.
50
51endif
52
Maxime Ripard8a6564d2014-10-03 20:16:29 +080053config SYS_CONFIG_NAME
Ian Campbellc3be2792014-10-24 21:20:45 +010054 default "sun4i" if MACH_SUN4I
55 default "sun5i" if MACH_SUN5I
56 default "sun6i" if MACH_SUN6I
57 default "sun7i" if MACH_SUN7I
58 default "sun8i" if MACH_SUN8I
Hans de Goede6ae66f22014-08-01 09:28:24 +020059
Ian Campbelld9a20472014-10-24 21:20:49 +010060choice
61 prompt "Board"
62
63config TARGET_A10_OLINUXINO_L
64 bool "A10_OLINUXINO_L"
65 depends on MACH_SUN4I
66
67config TARGET_A10S_OLINUXINO_M
68 bool "A10S_OLINUXINO_M"
69 depends on MACH_SUN5I
70
71config TARGET_A13_OLINUXINOM
72 bool "A13_OLINUXINOM"
73 depends on MACH_SUN5I
74
75config TARGET_A13_OLINUXINO
76 bool "A13_OLINUXINO"
77 depends on MACH_SUN5I
78
79config TARGET_A20_OLINUXINO_L2
80 bool "A20_OLINUXINO_L2"
81 depends on MACH_SUN7I
82
83config TARGET_A20_OLINUXINO_L
84 bool "A20_OLINUXINO_L"
85 depends on MACH_SUN7I
86
87config TARGET_A20_OLINUXINO_M
88 bool "A20_OLINUXINO_M"
89 depends on MACH_SUN7I
90
91config TARGET_AUXTEK_T004
92 bool "AUXTEK_T004"
93 depends on MACH_SUN5I
94
95config TARGET_BANANAPI
96 bool "BANANAPI"
97 depends on MACH_SUN7I
98
Hans de Goede81ec1002014-12-31 11:30:26 +010099config TARGET_BANANAPRO
100 bool "BANANAPRO"
101 depends on MACH_SUN7I
102
Ian Campbelld9a20472014-10-24 21:20:49 +0100103config TARGET_COLOMBUS
104 bool "COLOMBUS"
105 depends on MACH_SUN6I
106
107config TARGET_CUBIEBOARD2
108 bool "CUBIEBOARD2"
109 depends on MACH_SUN7I
110
111config TARGET_CUBIEBOARD
112 bool "CUBIEBOARD"
113 depends on MACH_SUN4I
114
115config TARGET_CUBIETRUCK
116 bool "CUBIETRUCK"
117 depends on MACH_SUN7I
118
Chen-Yu Tsaia805b7e2014-12-09 16:56:53 +0800119config TARGET_HUMMINGBIRD_A31
120 bool "HUMMINGBIRD_A31"
121 depends on MACH_SUN6I
122
Ian Campbelld9a20472014-10-24 21:20:49 +0100123config TARGET_IPPO_Q8H_V5
124 bool "IPPO_Q8H_V5"
125 depends on MACH_SUN8I
126
Zoltan HERPAI213dcbf2015-01-06 01:09:18 +0100127config TARGET_PCDUINO
128 bool "PCDUINO"
129 depends on MACH_SUN4I
130
Ian Campbelld9a20472014-10-24 21:20:49 +0100131config TARGET_PCDUINO3
132 bool "PCDUINO3"
133 depends on MACH_SUN7I
134
135config TARGET_MELE_A1000G
136 bool "MELE_A1000G"
137 depends on MACH_SUN4I
138
139config TARGET_MELE_A1000
140 bool "MELE_A1000"
141 depends on MACH_SUN4I
142
143config TARGET_MELE_M3
144 bool "MELE_M3"
145 depends on MACH_SUN7I
146
Hans de Goede505ecee2014-10-27 23:29:49 +0100147config TARGET_MELE_M9
148 bool "MELE_M9"
149 depends on MACH_SUN6I
150
Ian Campbelld9a20472014-10-24 21:20:49 +0100151config TARGET_MINI_X_1GB
152 bool "MINI_X_1GB"
153 depends on MACH_SUN4I
154
155config TARGET_MINI_X
156 bool "MINI_X"
157 depends on MACH_SUN4I
158
Siarhei Siamashkaf4f0df02014-12-27 09:38:57 +0200159config TARGET_MSI_PRIMO73
160 bool "MSI Primo73 (7\" tablet)"
161 depends on MACH_SUN7I
162 ---help---
163 The MSI Primo73 is an A20 based tablet, with 1G RAM, 16G NAND,
164 1024x600 TN LCD display, mono speaker, 0.3 MP front camera, 2.0 MP
165 rear camera, 3000 mAh battery, gt911 touchscreen, mma8452 accelerometer
166 and rtl8188etv usb wifi. Has "power", "volume+" and "volume-" buttons
167 (both volume buttons are also connected to the UBOOT_SEL pin). The
168 external connectors are represented by MicroSD slot, MiniHDMI, MicroUSB
169 OTG and 3.5mm headphone jack. More details are available at
170 http://linux-sunxi.org/MSI_Primo73
171
Siarhei Siamashka80e86692014-12-27 09:38:56 +0200172config TARGET_MSI_PRIMO81
173 bool "MSI Primo81 (7.85\" tablet)"
174 depends on MACH_SUN6I
175 ---help---
176 The MSI Primo81 is an A31s based tablet, with 1G RAM, 16G NAND,
177 1024x768 IPS LCD display, mono speaker, 0.3 MP front camera, 2.0 MP
178 rear camera, 3500 mAh battery, gt911 touchscreen, mma8452 accelerometer
179 and rtl8188etv usb wifi. Has "power", "volume+" and "volume-" buttons
180 (both volume buttons are also connected to the UBOOT_SEL pin). The
181 external connectors are represented by MicroSD slot, MiniHDMI, MicroUSB
182 OTG and 3.5mm headphone jack. More details are available at
183 http://linux-sunxi.org/MSI_Primo81
184
Ian Campbelld9a20472014-10-24 21:20:49 +0100185config TARGET_BA10_TV_BOX
186 bool "BA10_TV_BOX"
187 depends on MACH_SUN4I
188
189config TARGET_I12_TVBOX
190 bool "I12_TVBOX"
191 depends on MACH_SUN7I
192
193config TARGET_QT840A
194 bool "QT840A"
195 depends on MACH_SUN7I
196
197config TARGET_R7DONGLE
198 bool "R7DONGLE"
199 depends on MACH_SUN5I
200
201endchoice
202
Masahiro Yamadadd840582014-07-30 14:08:14 +0900203config SYS_BOARD
Masahiro Yamadadd840582014-07-30 14:08:14 +0900204 default "sunxi"
205
206config SYS_SOC
Masahiro Yamadadd840582014-07-30 14:08:14 +0900207 default "sunxi"
208
Ian Campbell4ce99412014-10-24 21:20:46 +0100209config SPL_FEL
210 bool "SPL/FEL mode support"
211 depends on SPL
212 default n
213
Siarhei Siamashkaf0ce28e2014-12-25 02:34:47 +0200214config UART0_PORT_F
215 bool "UART0 on MicroSD breakout board"
216 depends on SPL_FEL
217 default n
218 ---help---
219 Repurpose the SD card slot for getting access to the UART0 serial
220 console. Primarily useful only for low level u-boot debugging on
221 tablets, where normal UART0 is difficult to access and requires
222 device disassembly and/or soldering. As the SD card can't be used
223 at the same time, the system can be only booted in the FEL mode.
224 Only enable this if you really know what you are doing.
225
Ian Campbell98e214d2014-08-31 13:13:43 +0100226config FDTFILE
227 string "Default fdtfile env setting for this board"
Hans de Goede846e3252014-08-01 09:37:58 +0200228
Hans de Goedeaccc9e42014-10-22 14:56:36 +0200229config OLD_SUNXI_KERNEL_COMPAT
230 boolean "Enable workarounds for booting old kernels"
231 default n
232 ---help---
233 Set this to enable various workarounds for old kernels, this results in
234 sub-optimal settings for newer kernels, only enable if needed.
235
Hans de Goedecd821132014-10-02 20:29:26 +0200236config MMC0_CD_PIN
237 string "Card detect pin for mmc0"
238 default ""
239 ---help---
240 Set the card detect pin for mmc0, leave empty to not use cd. This
241 takes a string in the format understood by sunxi_name_to_gpio, e.g.
242 PH1 for pin 1 of port H.
243
244config MMC1_CD_PIN
245 string "Card detect pin for mmc1"
246 default ""
247 ---help---
248 See MMC0_CD_PIN help text.
249
250config MMC2_CD_PIN
251 string "Card detect pin for mmc2"
252 default ""
253 ---help---
254 See MMC0_CD_PIN help text.
255
256config MMC3_CD_PIN
257 string "Card detect pin for mmc3"
258 default ""
259 ---help---
260 See MMC0_CD_PIN help text.
261
Hans de Goede2ccfac02014-10-02 20:43:50 +0200262config MMC_SUNXI_SLOT_EXTRA
263 int "mmc extra slot number"
264 default -1
265 ---help---
266 sunxi builds always enable mmc0, some boards also have a second sdcard
267 slot or emmc on mmc1 - mmc3. Setting this to 1, 2 or 3 will enable
268 support for this.
269
Hans de Goede4458b7a2015-01-07 15:26:06 +0100270config USB0_VBUS_PIN
271 string "Vbus enable pin for usb0 (otg)"
272 default ""
273 ---help---
274 Set the Vbus enable pin for usb0 (otg). This takes a string in the
275 format understood by sunxi_name_to_gpio, e.g. PH1 for pin 1 of port H.
276
Hans de Goede115200c2014-11-07 16:09:00 +0100277config USB1_VBUS_PIN
278 string "Vbus enable pin for usb1 (ehci0)"
279 default "PH6" if MACH_SUN4I || MACH_SUN7I
Hans de Goede76946df2014-11-07 14:51:12 +0100280 default "PH27" if MACH_SUN6I
Hans de Goede115200c2014-11-07 16:09:00 +0100281 ---help---
282 Set the Vbus enable pin for usb1 (ehci0, usb0 is the otg). This takes
283 a string in the format understood by sunxi_name_to_gpio, e.g.
284 PH1 for pin 1 of port H.
285
286config USB2_VBUS_PIN
287 string "Vbus enable pin for usb2 (ehci1)"
288 default "PH3" if MACH_SUN4I || MACH_SUN7I
Hans de Goede76946df2014-11-07 14:51:12 +0100289 default "PH24" if MACH_SUN6I
Hans de Goede115200c2014-11-07 16:09:00 +0100290 ---help---
291 See USB1_VBUS_PIN help text.
292
Luc Verhaegen7f2c5212014-08-13 07:55:06 +0200293config VIDEO
Hans de Goede2dae8002014-12-21 16:28:32 +0100294 boolean "Enable graphical uboot console on HDMI, LCD or VGA"
Luc Verhaegen7f2c5212014-08-13 07:55:06 +0200295 default y
296 ---help---
Hans de Goede2dae8002014-12-21 16:28:32 +0100297 Say Y here to add support for using a cfb console on the HDMI, LCD
298 or VGA output found on most sunxi devices. See doc/README.video for
299 info on how to select the video output and mode.
300
Hans de Goede2fbf0912014-12-23 23:04:35 +0100301config VIDEO_HDMI
302 boolean "HDMI output support"
303 depends on VIDEO && !MACH_SUN8I
304 default y
305 ---help---
306 Say Y here to add support for outputting video over HDMI.
307
Hans de Goeded9786d22014-12-25 13:58:06 +0100308config VIDEO_VGA
309 boolean "VGA output support"
310 depends on VIDEO && (MACH_SUN4I || MACH_SUN7I)
311 default n
312 ---help---
313 Say Y here to add support for outputting video over VGA.
314
Hans de Goedee2bbdfb2014-12-24 12:17:07 +0100315config VIDEO_VGA_VIA_LCD
316 boolean "VGA via LCD controller support"
Chen-Yu Tsai2583d5b2015-01-12 18:02:10 +0800317 depends on VIDEO && (MACH_SUN5I || MACH_SUN6I || MACH_SUN8I)
Hans de Goedee2bbdfb2014-12-24 12:17:07 +0100318 default n
319 ---help---
320 Say Y here to add support for external DACs connected to the parallel
321 LCD interface driving a VGA connector, such as found on the
322 Olimex A13 boards.
323
Chen-Yu Tsai507e27d2015-01-12 18:02:11 +0800324config VIDEO_VGA_EXTERNAL_DAC_EN
325 string "LCD panel power enable pin"
326 depends on VIDEO_VGA_VIA_LCD
327 default ""
328 ---help---
329 Set the enable pin for the external VGA DAC. This takes a string in the
330 format understood by sunxi_name_to_gpio, e.g. PH1 for pin 1 of port H.
331
Hans de Goede2dae8002014-12-21 16:28:32 +0100332config VIDEO_LCD_MODE
333 string "LCD panel timing details"
334 depends on VIDEO
335 default ""
336 ---help---
337 LCD panel timing details string, leave empty if there is no LCD panel.
338 This is in drivers/video/videomodes.c: video_get_params() format, e.g.
339 x:800,y:480,depth:18,pclk_khz:33000,le:16,ri:209,up:22,lo:22,hs:30,vs:1,sync:0,vmode:0
340
Hans de Goede65150322015-01-13 13:21:46 +0100341config VIDEO_LCD_DCLK_PHASE
342 int "LCD panel display clock phase"
343 depends on VIDEO
344 default 1
345 ---help---
346 Select LCD panel display clock phase shift, range 0-3.
347
Hans de Goede2dae8002014-12-21 16:28:32 +0100348config VIDEO_LCD_POWER
349 string "LCD panel power enable pin"
350 depends on VIDEO
351 default ""
352 ---help---
353 Set the power enable pin for the LCD panel. This takes a string in the
354 format understood by sunxi_name_to_gpio, e.g. PH1 for pin 1 of port H.
355
356config VIDEO_LCD_BL_EN
357 string "LCD panel backlight enable pin"
358 depends on VIDEO
359 default ""
360 ---help---
361 Set the backlight enable pin for the LCD panel. This takes a string in the
362 the format understood by sunxi_name_to_gpio, e.g. PH1 for pin 1 of
363 port H.
364
365config VIDEO_LCD_BL_PWM
366 string "LCD panel backlight pwm pin"
367 depends on VIDEO
368 default ""
369 ---help---
370 Set the backlight pwm pin for the LCD panel. This takes a string in the
371 format understood by sunxi_name_to_gpio, e.g. PH1 for pin 1 of port H.
Luc Verhaegen7f2c5212014-08-13 07:55:06 +0200372
Hans de Goede213480e2015-01-01 22:04:34 +0100373
374# Note only one of these may be selected at a time! But hidden choices are
375# not supported by Kconfig
376config VIDEO_LCD_IF_PARALLEL
377 bool
378
379config VIDEO_LCD_IF_LVDS
380 bool
381
382
383choice
384 prompt "LCD panel support"
385 depends on VIDEO
386 ---help---
387 Select which type of LCD panel to support.
388
389config VIDEO_LCD_PANEL_PARALLEL
390 bool "Generic parallel interface LCD panel"
391 select VIDEO_LCD_IF_PARALLEL
392
393config VIDEO_LCD_PANEL_LVDS
394 bool "Generic lvds interface LCD panel"
395 select VIDEO_LCD_IF_LVDS
396
397endchoice
398
399
Hans de Goede86b49092014-09-18 21:03:34 +0200400config USB_KEYBOARD
401 boolean "Enable USB keyboard support"
402 default y
403 ---help---
404 Say Y here to add support for using a USB keyboard (typically used
Hans de Goede2dae8002014-12-21 16:28:32 +0100405 in combination with a graphical console).
Hans de Goede86b49092014-09-18 21:03:34 +0200406
Masahiro Yamadadd840582014-07-30 14:08:14 +0900407endif