blob: 1e9cee7e07223e09844fdd5180eb404e26e989ad [file] [log] [blame]
Ian Campbelld8e69e02014-10-24 21:20:44 +01001if ARCH_SUNXI
2
3choice
4 prompt "Sunxi SoC Variant"
5
Ian Campbell4a24a1c2014-10-24 21:20:45 +01006config MACH_SUN4I
Ian Campbelld8e69e02014-10-24 21:20:44 +01007 bool "sun4i (Allwinner A10)"
8 select CPU_V7
9 select SUPPORT_SPL
10
Ian Campbell4a24a1c2014-10-24 21:20:45 +010011config MACH_SUN5I
Ian Campbelld8e69e02014-10-24 21:20:44 +010012 bool "sun5i (Allwinner A13)"
13 select CPU_V7
14 select SUPPORT_SPL
15
Ian Campbell4a24a1c2014-10-24 21:20:45 +010016config MACH_SUN6I
Ian Campbelld8e69e02014-10-24 21:20:44 +010017 bool "sun6i (Allwinner A31)"
18 select CPU_V7
Hans de Goedea5403b92014-10-25 20:18:10 +020019 select SUPPORT_SPL
Ian Campbelld8e69e02014-10-24 21:20:44 +010020
Ian Campbell4a24a1c2014-10-24 21:20:45 +010021config MACH_SUN7I
Ian Campbelld8e69e02014-10-24 21:20:44 +010022 bool "sun7i (Allwinner A20)"
23 select CPU_V7
Hans de Goede85437352014-11-14 09:34:30 +010024 select CPU_V7_HAS_NONSEC
25 select CPU_V7_HAS_VIRT
Ian Campbelld8e69e02014-10-24 21:20:44 +010026 select SUPPORT_SPL
Hans de Goedea5636382014-10-24 20:12:04 +020027 select ARMV7_BOOT_SEC_DEFAULT if OLD_SUNXI_KERNEL_COMPAT
Ian Campbelld8e69e02014-10-24 21:20:44 +010028
Ian Campbell4a24a1c2014-10-24 21:20:45 +010029config MACH_SUN8I
Ian Campbelld8e69e02014-10-24 21:20:44 +010030 bool "sun8i (Allwinner A23)"
31 select CPU_V7
Hans de Goede966d2392014-12-07 14:34:27 +010032 select SUPPORT_SPL
Ian Campbelld8e69e02014-10-24 21:20:44 +010033
34endchoice
Maxime Ripard2c519412014-10-03 20:16:29 +080035
Hans de Goede3aeaa282014-11-15 19:46:39 +010036config DRAM_CLK
Hans de Goede59d9fc72015-01-17 14:24:55 +010037 int "sunxi dram clock speed"
38 default 312 if MACH_SUN6I || MACH_SUN8I
39 default 360 if MACH_SUN4I || MACH_SUN5I || MACH_SUN7I
Hans de Goede3aeaa282014-11-15 19:46:39 +010040 ---help---
41 Set the dram clock speed, valid range 240 - 480, must be a multiple
Hans de Goede59d9fc72015-01-17 14:24:55 +010042 of 24. Note on sun4i / sun5i / sun7i this is only used by boards
43 which use dram autoconfig.
Hans de Goede3aeaa282014-11-15 19:46:39 +010044
45config DRAM_ZQ
Hans de Goede59d9fc72015-01-17 14:24:55 +010046 int "sunxi dram zq value"
47 default 123 if MACH_SUN4I || MACH_SUN5I || MACH_SUN6I || MACH_SUN8I
48 default 127 if MACH_SUN7I
Hans de Goede3aeaa282014-11-15 19:46:39 +010049 ---help---
Hans de Goede59d9fc72015-01-17 14:24:55 +010050 Set the dram zq value. Note on sun4i / sun5i / sun7i this is only
51 used by boards which use dram autoconfig.
Hans de Goede3aeaa282014-11-15 19:46:39 +010052
Hans de Goede59d9fc72015-01-17 14:24:55 +010053if MACH_SUN4I || MACH_SUN5I || MACH_SUN7I
54config DRAM_EMR1
55 int "sunxi dram emr1 value"
56 default 0 if MACH_SUN4I
57 default 4 if MACH_SUN5I || MACH_SUN7I
58 ---help---
59 Set the dram controller emr1 value. Note this is only used by boards
60 which use dram autoconfig.
Hans de Goede3aeaa282014-11-15 19:46:39 +010061endif
62
Maxime Ripard2c519412014-10-03 20:16:29 +080063config SYS_CONFIG_NAME
Ian Campbell4a24a1c2014-10-24 21:20:45 +010064 default "sun4i" if MACH_SUN4I
65 default "sun5i" if MACH_SUN5I
66 default "sun6i" if MACH_SUN6I
67 default "sun7i" if MACH_SUN7I
68 default "sun8i" if MACH_SUN8I
Masahiro Yamadad3ae6782014-07-30 14:08:14 +090069
Ian Campbell0ea187d2014-10-24 21:20:49 +010070choice
71 prompt "Board"
72
Ian Campbell0ea187d2014-10-24 21:20:49 +010073config TARGET_A10S_OLINUXINO_M
74 bool "A10S_OLINUXINO_M"
75 depends on MACH_SUN5I
76
77config TARGET_A13_OLINUXINOM
78 bool "A13_OLINUXINOM"
79 depends on MACH_SUN5I
80
81config TARGET_A13_OLINUXINO
82 bool "A13_OLINUXINO"
83 depends on MACH_SUN5I
84
85config TARGET_A20_OLINUXINO_L2
86 bool "A20_OLINUXINO_L2"
87 depends on MACH_SUN7I
88
89config TARGET_A20_OLINUXINO_L
90 bool "A20_OLINUXINO_L"
91 depends on MACH_SUN7I
92
93config TARGET_A20_OLINUXINO_M
94 bool "A20_OLINUXINO_M"
95 depends on MACH_SUN7I
96
97config TARGET_AUXTEK_T004
98 bool "AUXTEK_T004"
99 depends on MACH_SUN5I
100
101config TARGET_BANANAPI
102 bool "BANANAPI"
103 depends on MACH_SUN7I
104
Hans de Goeded8eb4732014-12-31 11:30:26 +0100105config TARGET_BANANAPRO
106 bool "BANANAPRO"
107 depends on MACH_SUN7I
108
Ian Campbell0ea187d2014-10-24 21:20:49 +0100109config TARGET_CUBIEBOARD2
110 bool "CUBIEBOARD2"
111 depends on MACH_SUN7I
112
Ian Campbell0ea187d2014-10-24 21:20:49 +0100113config TARGET_CUBIETRUCK
114 bool "CUBIETRUCK"
115 depends on MACH_SUN7I
116
Ian Campbell0ea187d2014-10-24 21:20:49 +0100117config TARGET_PCDUINO3
118 bool "PCDUINO3"
119 depends on MACH_SUN7I
120
Ian Campbell0ea187d2014-10-24 21:20:49 +0100121config TARGET_MELE_M3
122 bool "MELE_M3"
123 depends on MACH_SUN7I
124
Hans de Goede7ee8cd12015-01-17 22:31:30 +0100125config TARGET_MK802_A10S
126 bool "MK802_A10S"
127 depends on MACH_SUN5I
128
Siarhei Siamashka41ae42c2014-12-27 09:38:57 +0200129config TARGET_MSI_PRIMO73
130 bool "MSI Primo73 (7\" tablet)"
131 depends on MACH_SUN7I
132 ---help---
133 The MSI Primo73 is an A20 based tablet, with 1G RAM, 16G NAND,
134 1024x600 TN LCD display, mono speaker, 0.3 MP front camera, 2.0 MP
135 rear camera, 3000 mAh battery, gt911 touchscreen, mma8452 accelerometer
136 and rtl8188etv usb wifi. Has "power", "volume+" and "volume-" buttons
137 (both volume buttons are also connected to the UBOOT_SEL pin). The
138 external connectors are represented by MicroSD slot, MiniHDMI, MicroUSB
139 OTG and 3.5mm headphone jack. More details are available at
140 http://linux-sunxi.org/MSI_Primo73
141
Ian Campbell0ea187d2014-10-24 21:20:49 +0100142config TARGET_I12_TVBOX
143 bool "I12_TVBOX"
144 depends on MACH_SUN7I
145
146config TARGET_QT840A
147 bool "QT840A"
148 depends on MACH_SUN7I
149
150config TARGET_R7DONGLE
151 bool "R7DONGLE"
152 depends on MACH_SUN5I
153
154endchoice
155
Masahiro Yamadad3ae6782014-07-30 14:08:14 +0900156config SYS_BOARD
Masahiro Yamadad3ae6782014-07-30 14:08:14 +0900157 default "sunxi"
158
159config SYS_SOC
Masahiro Yamadad3ae6782014-07-30 14:08:14 +0900160 default "sunxi"
161
Ian Campbell8ad104b2014-10-24 21:20:46 +0100162config SPL_FEL
163 bool "SPL/FEL mode support"
164 depends on SPL
165 default n
166
Siarhei Siamashka121161f2014-12-25 02:34:47 +0200167config UART0_PORT_F
168 bool "UART0 on MicroSD breakout board"
169 depends on SPL_FEL
170 default n
171 ---help---
172 Repurpose the SD card slot for getting access to the UART0 serial
173 console. Primarily useful only for low level u-boot debugging on
174 tablets, where normal UART0 is difficult to access and requires
175 device disassembly and/or soldering. As the SD card can't be used
176 at the same time, the system can be only booted in the FEL mode.
177 Only enable this if you really know what you are doing.
178
Ian Campbell9536fc42014-08-31 13:13:43 +0100179config FDTFILE
180 string "Default fdtfile env setting for this board"
Hans de Goede2f60c312014-08-01 09:37:58 +0200181
Hans de Goede05e5bcb2014-10-22 14:56:36 +0200182config OLD_SUNXI_KERNEL_COMPAT
183 boolean "Enable workarounds for booting old kernels"
184 default n
185 ---help---
186 Set this to enable various workarounds for old kernels, this results in
187 sub-optimal settings for newer kernels, only enable if needed.
188
Hans de Goede7412ef82014-10-02 20:29:26 +0200189config MMC0_CD_PIN
190 string "Card detect pin for mmc0"
191 default ""
192 ---help---
193 Set the card detect pin for mmc0, leave empty to not use cd. This
194 takes a string in the format understood by sunxi_name_to_gpio, e.g.
195 PH1 for pin 1 of port H.
196
197config MMC1_CD_PIN
198 string "Card detect pin for mmc1"
199 default ""
200 ---help---
201 See MMC0_CD_PIN help text.
202
203config MMC2_CD_PIN
204 string "Card detect pin for mmc2"
205 default ""
206 ---help---
207 See MMC0_CD_PIN help text.
208
209config MMC3_CD_PIN
210 string "Card detect pin for mmc3"
211 default ""
212 ---help---
213 See MMC0_CD_PIN help text.
214
Hans de Goedeaf593e42014-10-02 20:43:50 +0200215config MMC_SUNXI_SLOT_EXTRA
216 int "mmc extra slot number"
217 default -1
218 ---help---
219 sunxi builds always enable mmc0, some boards also have a second sdcard
220 slot or emmc on mmc1 - mmc3. Setting this to 1, 2 or 3 will enable
221 support for this.
222
Hans de Goedee7b852a2015-01-07 15:26:06 +0100223config USB0_VBUS_PIN
224 string "Vbus enable pin for usb0 (otg)"
225 default ""
226 ---help---
227 Set the Vbus enable pin for usb0 (otg). This takes a string in the
228 format understood by sunxi_name_to_gpio, e.g. PH1 for pin 1 of port H.
229
Hans de Goedeaf4273b2014-11-07 16:09:00 +0100230config USB1_VBUS_PIN
231 string "Vbus enable pin for usb1 (ehci0)"
232 default "PH6" if MACH_SUN4I || MACH_SUN7I
Hans de Goedeb5ab8ce2014-11-07 14:51:12 +0100233 default "PH27" if MACH_SUN6I
Hans de Goedeaf4273b2014-11-07 16:09:00 +0100234 ---help---
235 Set the Vbus enable pin for usb1 (ehci0, usb0 is the otg). This takes
236 a string in the format understood by sunxi_name_to_gpio, e.g.
237 PH1 for pin 1 of port H.
238
239config USB2_VBUS_PIN
240 string "Vbus enable pin for usb2 (ehci1)"
241 default "PH3" if MACH_SUN4I || MACH_SUN7I
Hans de Goedeb5ab8ce2014-11-07 14:51:12 +0100242 default "PH24" if MACH_SUN6I
Hans de Goedeaf4273b2014-11-07 16:09:00 +0100243 ---help---
244 See USB1_VBUS_PIN help text.
245
Luc Verhaegenb01df1e2014-08-13 07:55:06 +0200246config VIDEO
Hans de Goede7e68a1b2014-12-21 16:28:32 +0100247 boolean "Enable graphical uboot console on HDMI, LCD or VGA"
Luc Verhaegenb01df1e2014-08-13 07:55:06 +0200248 default y
249 ---help---
Hans de Goede7e68a1b2014-12-21 16:28:32 +0100250 Say Y here to add support for using a cfb console on the HDMI, LCD
251 or VGA output found on most sunxi devices. See doc/README.video for
252 info on how to select the video output and mode.
253
Hans de Goedee9544592014-12-23 23:04:35 +0100254config VIDEO_HDMI
255 boolean "HDMI output support"
256 depends on VIDEO && !MACH_SUN8I
257 default y
258 ---help---
259 Say Y here to add support for outputting video over HDMI.
260
Hans de Goede260f5202014-12-25 13:58:06 +0100261config VIDEO_VGA
262 boolean "VGA output support"
263 depends on VIDEO && (MACH_SUN4I || MACH_SUN7I)
264 default n
265 ---help---
266 Say Y here to add support for outputting video over VGA.
267
Hans de Goedeac1633c2014-12-24 12:17:07 +0100268config VIDEO_VGA_VIA_LCD
269 boolean "VGA via LCD controller support"
Chen-Yu Tsai39ca4c12015-01-12 18:02:10 +0800270 depends on VIDEO && (MACH_SUN5I || MACH_SUN6I || MACH_SUN8I)
Hans de Goedeac1633c2014-12-24 12:17:07 +0100271 default n
272 ---help---
273 Say Y here to add support for external DACs connected to the parallel
274 LCD interface driving a VGA connector, such as found on the
275 Olimex A13 boards.
276
Chen-Yu Tsai9ed19522015-01-12 18:02:11 +0800277config VIDEO_VGA_EXTERNAL_DAC_EN
278 string "LCD panel power enable pin"
279 depends on VIDEO_VGA_VIA_LCD
280 default ""
281 ---help---
282 Set the enable pin for the external VGA DAC. This takes a string in the
283 format understood by sunxi_name_to_gpio, e.g. PH1 for pin 1 of port H.
284
Hans de Goede7e68a1b2014-12-21 16:28:32 +0100285config VIDEO_LCD_MODE
286 string "LCD panel timing details"
287 depends on VIDEO
288 default ""
289 ---help---
290 LCD panel timing details string, leave empty if there is no LCD panel.
291 This is in drivers/video/videomodes.c: video_get_params() format, e.g.
292 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
293
Hans de Goede481b6642015-01-13 13:21:46 +0100294config VIDEO_LCD_DCLK_PHASE
295 int "LCD panel display clock phase"
296 depends on VIDEO
297 default 1
298 ---help---
299 Select LCD panel display clock phase shift, range 0-3.
300
Hans de Goede7e68a1b2014-12-21 16:28:32 +0100301config VIDEO_LCD_POWER
302 string "LCD panel power enable pin"
303 depends on VIDEO
304 default ""
305 ---help---
306 Set the power enable pin for the LCD panel. This takes a string in the
307 format understood by sunxi_name_to_gpio, e.g. PH1 for pin 1 of port H.
308
309config VIDEO_LCD_BL_EN
310 string "LCD panel backlight enable pin"
311 depends on VIDEO
312 default ""
313 ---help---
314 Set the backlight enable pin for the LCD panel. This takes a string in the
315 the format understood by sunxi_name_to_gpio, e.g. PH1 for pin 1 of
316 port H.
317
318config VIDEO_LCD_BL_PWM
319 string "LCD panel backlight pwm pin"
320 depends on VIDEO
321 default ""
322 ---help---
323 Set the backlight pwm pin for the LCD panel. This takes a string in the
324 format understood by sunxi_name_to_gpio, e.g. PH1 for pin 1 of port H.
Luc Verhaegenb01df1e2014-08-13 07:55:06 +0200325
Hans de Goede797a0f52015-01-01 22:04:34 +0100326
327# Note only one of these may be selected at a time! But hidden choices are
328# not supported by Kconfig
329config VIDEO_LCD_IF_PARALLEL
330 bool
331
332config VIDEO_LCD_IF_LVDS
333 bool
334
335
336choice
337 prompt "LCD panel support"
338 depends on VIDEO
339 ---help---
340 Select which type of LCD panel to support.
341
342config VIDEO_LCD_PANEL_PARALLEL
343 bool "Generic parallel interface LCD panel"
344 select VIDEO_LCD_IF_PARALLEL
345
346config VIDEO_LCD_PANEL_LVDS
347 bool "Generic lvds interface LCD panel"
348 select VIDEO_LCD_IF_LVDS
349
350endchoice
351
352
Hans de Goede16030822014-09-18 21:03:34 +0200353config USB_KEYBOARD
354 boolean "Enable USB keyboard support"
355 default y
356 ---help---
357 Say Y here to add support for using a USB keyboard (typically used
Hans de Goede7e68a1b2014-12-21 16:28:32 +0100358 in combination with a graphical console).
Hans de Goede16030822014-09-18 21:03:34 +0200359
Masahiro Yamadad3ae6782014-07-30 14:08:14 +0900360endif