blob: 8a30d0846736134002c82dda3073501cf57df6c5 [file] [log] [blame]
Ian Campbell2c7e3b92014-10-24 21:20:44 +01001if ARCH_SUNXI
2
Hans de Goede44d8ae52015-04-06 20:33:34 +02003# Note only one of these may be selected at a time! But hidden choices are
4# not supported by Kconfig
5config SUNXI_GEN_SUN4I
6 bool
7 ---help---
8 Select this for sunxi SoCs which have resets and clocks set up
9 as the original A10 (mach-sun4i).
10
11config SUNXI_GEN_SUN6I
12 bool
13 ---help---
14 Select this for sunxi SoCs which have sun6i like periphery, like
15 separate ahb reset control registers, custom pmic bus, new style
16 watchdog, etc.
17
18
Ian Campbell2c7e3b92014-10-24 21:20:44 +010019choice
20 prompt "Sunxi SoC Variant"
Joe Hershbergera26cd042015-05-12 14:46:23 -050021 optional
Ian Campbell2c7e3b92014-10-24 21:20:44 +010022
Ian Campbellc3be2792014-10-24 21:20:45 +010023config MACH_SUN4I
Ian Campbell2c7e3b92014-10-24 21:20:44 +010024 bool "sun4i (Allwinner A10)"
25 select CPU_V7
Hans de Goede44d8ae52015-04-06 20:33:34 +020026 select SUNXI_GEN_SUN4I
Ian Campbell2c7e3b92014-10-24 21:20:44 +010027 select SUPPORT_SPL
28
Ian Campbellc3be2792014-10-24 21:20:45 +010029config MACH_SUN5I
Ian Campbell2c7e3b92014-10-24 21:20:44 +010030 bool "sun5i (Allwinner A13)"
31 select CPU_V7
Hans de Goede44d8ae52015-04-06 20:33:34 +020032 select SUNXI_GEN_SUN4I
Ian Campbell2c7e3b92014-10-24 21:20:44 +010033 select SUPPORT_SPL
34
Ian Campbellc3be2792014-10-24 21:20:45 +010035config MACH_SUN6I
Ian Campbell2c7e3b92014-10-24 21:20:44 +010036 bool "sun6i (Allwinner A31)"
37 select CPU_V7
Chen-Yu Tsaicc08ea42015-05-28 21:25:32 +080038 select CPU_V7_HAS_NONSEC
39 select CPU_V7_HAS_VIRT
Hans de Goede44d8ae52015-04-06 20:33:34 +020040 select SUNXI_GEN_SUN6I
Hans de Goede8c2c9cf2014-10-25 20:18:10 +020041 select SUPPORT_SPL
Chen-Yu Tsaicc08ea42015-05-28 21:25:32 +080042 select ARMV7_BOOT_SEC_DEFAULT if OLD_SUNXI_KERNEL_COMPAT
Ian Campbell2c7e3b92014-10-24 21:20:44 +010043
Ian Campbellc3be2792014-10-24 21:20:45 +010044config MACH_SUN7I
Ian Campbell2c7e3b92014-10-24 21:20:44 +010045 bool "sun7i (Allwinner A20)"
46 select CPU_V7
Hans de Goedeea624e12014-11-14 09:34:30 +010047 select CPU_V7_HAS_NONSEC
48 select CPU_V7_HAS_VIRT
Hans de Goede44d8ae52015-04-06 20:33:34 +020049 select SUNXI_GEN_SUN4I
Ian Campbell2c7e3b92014-10-24 21:20:44 +010050 select SUPPORT_SPL
Hans de Goedeb366fb92014-10-24 20:12:04 +020051 select ARMV7_BOOT_SEC_DEFAULT if OLD_SUNXI_KERNEL_COMPAT
Ian Campbell2c7e3b92014-10-24 21:20:44 +010052
Hans de Goede5e6bacd2015-04-06 20:55:39 +020053config MACH_SUN8I_A23
Ian Campbell2c7e3b92014-10-24 21:20:44 +010054 bool "sun8i (Allwinner A23)"
55 select CPU_V7
Chen-Yu Tsai014414f2015-05-28 21:25:34 +080056 select CPU_V7_HAS_NONSEC
57 select CPU_V7_HAS_VIRT
Hans de Goede44d8ae52015-04-06 20:33:34 +020058 select SUNXI_GEN_SUN6I
Hans de Goede08fd1472014-12-07 14:34:27 +010059 select SUPPORT_SPL
Chen-Yu Tsai014414f2015-05-28 21:25:34 +080060 select ARMV7_BOOT_SEC_DEFAULT if OLD_SUNXI_KERNEL_COMPAT
Ian Campbell2c7e3b92014-10-24 21:20:44 +010061
Vishnu Patekar8c3dacf2015-03-01 23:47:48 +053062config MACH_SUN8I_A33
63 bool "sun8i (Allwinner A33)"
64 select CPU_V7
Chen-Yu Tsai014414f2015-05-28 21:25:34 +080065 select CPU_V7_HAS_NONSEC
66 select CPU_V7_HAS_VIRT
Vishnu Patekar8c3dacf2015-03-01 23:47:48 +053067 select SUNXI_GEN_SUN6I
68 select SUPPORT_SPL
Chen-Yu Tsai014414f2015-05-28 21:25:34 +080069 select ARMV7_BOOT_SEC_DEFAULT if OLD_SUNXI_KERNEL_COMPAT
Vishnu Patekar8c3dacf2015-03-01 23:47:48 +053070
Jens Kuske1c27b7d2015-11-17 15:12:58 +010071config MACH_SUN8I_H3
72 bool "sun8i (Allwinner H3)"
73 select CPU_V7
Chen-Yu Tsai853f6d12016-01-06 15:13:09 +080074 select CPU_V7_HAS_NONSEC
75 select CPU_V7_HAS_VIRT
Jens Kuske1c27b7d2015-11-17 15:12:58 +010076 select SUNXI_GEN_SUN6I
Jens Kuske0404d532015-11-17 15:12:59 +010077 select SUPPORT_SPL
Chen-Yu Tsai853f6d12016-01-06 15:13:09 +080078 select ARMV7_BOOT_SEC_DEFAULT if OLD_SUNXI_KERNEL_COMPAT
Jens Kuske1c27b7d2015-11-17 15:12:58 +010079
vishnupatekar762e24a2015-11-29 01:07:19 +080080config MACH_SUN8I_A83T
81 bool "sun8i (Allwinner A83T)"
82 select CPU_V7
83 select SUNXI_GEN_SUN6I
84 select SUPPORT_SPL
85
Hans de Goede1871a8c2015-01-13 19:25:06 +010086config MACH_SUN9I
87 bool "sun9i (Allwinner A80)"
88 select CPU_V7
89 select SUNXI_GEN_SUN6I
90
Ian Campbell2c7e3b92014-10-24 21:20:44 +010091endchoice
Maxime Ripard8a6564d2014-10-03 20:16:29 +080092
Hans de Goede5e6bacd2015-04-06 20:55:39 +020093# The sun8i SoCs share a lot, this helps to avoid a lot of "if A23 || A33"
94config MACH_SUN8I
95 bool
vishnupatekar762e24a2015-11-29 01:07:19 +080096 default y if MACH_SUN8I_A23 || MACH_SUN8I_A33 || MACH_SUN8I_H3 || MACH_SUN8I_A83T
Hans de Goede5e6bacd2015-04-06 20:55:39 +020097
98
Hans de Goede37781a12014-11-15 19:46:39 +010099config DRAM_CLK
Hans de Goede8ffc4872015-01-17 14:24:55 +0100100 int "sunxi dram clock speed"
101 default 312 if MACH_SUN6I || MACH_SUN8I
102 default 360 if MACH_SUN4I || MACH_SUN5I || MACH_SUN7I
Hans de Goede37781a12014-11-15 19:46:39 +0100103 ---help---
104 Set the dram clock speed, valid range 240 - 480, must be a multiple
Hans de Goedee1a08882015-01-25 11:29:27 +0100105 of 24.
Hans de Goede37781a12014-11-15 19:46:39 +0100106
Siarhei Siamashka47e35012015-02-01 00:27:06 +0200107if MACH_SUN5I || MACH_SUN7I
108config DRAM_MBUS_CLK
109 int "sunxi mbus clock speed"
110 default 300
111 ---help---
112 Set the mbus clock speed. The maximum on sun5i hardware is 300MHz.
113
114endif
115
Hans de Goede37781a12014-11-15 19:46:39 +0100116config DRAM_ZQ
Hans de Goede8ffc4872015-01-17 14:24:55 +0100117 int "sunxi dram zq value"
118 default 123 if MACH_SUN4I || MACH_SUN5I || MACH_SUN6I || MACH_SUN8I
119 default 127 if MACH_SUN7I
Hans de Goede37781a12014-11-15 19:46:39 +0100120 ---help---
Hans de Goedee1a08882015-01-25 11:29:27 +0100121 Set the dram zq value.
Hans de Goede37781a12014-11-15 19:46:39 +0100122
Hans de Goede8975cdf2015-05-13 15:00:46 +0200123config DRAM_ODT_EN
124 bool "sunxi dram odt enable"
125 default n if !MACH_SUN8I_A23
126 default y if MACH_SUN8I_A23
127 ---help---
128 Select this to enable dram odt (on die termination).
129
Hans de Goede8ffc4872015-01-17 14:24:55 +0100130if MACH_SUN4I || MACH_SUN5I || MACH_SUN7I
131config DRAM_EMR1
132 int "sunxi dram emr1 value"
133 default 0 if MACH_SUN4I
134 default 4 if MACH_SUN5I || MACH_SUN7I
135 ---help---
Hans de Goedee1a08882015-01-25 11:29:27 +0100136 Set the dram controller emr1 value.
Siarhei Siamashkad1336472015-02-01 00:27:05 +0200137
Siarhei Siamashka47e35012015-02-01 00:27:06 +0200138config DRAM_TPR3
139 hex "sunxi dram tpr3 value"
140 default 0
141 ---help---
142 Set the dram controller tpr3 parameter. This parameter configures
143 the delay on the command lane and also phase shifts, which are
144 applied for sampling incoming read data. The default value 0
145 means that no phase/delay adjustments are necessary. Properly
146 configuring this parameter increases reliability at high DRAM
147 clock speeds.
148
149config DRAM_DQS_GATING_DELAY
150 hex "sunxi dram dqs_gating_delay value"
151 default 0
152 ---help---
153 Set the dram controller dqs_gating_delay parmeter. Each byte
154 encodes the DQS gating delay for each byte lane. The delay
155 granularity is 1/4 cycle. For example, the value 0x05060606
156 means that the delay is 5 quarter-cycles for one lane (1.25
157 cycles) and 6 quarter-cycles (1.5 cycles) for 3 other lanes.
158 The default value 0 means autodetection. The results of hardware
159 autodetection are not very reliable and depend on the chip
160 temperature (sometimes producing different results on cold start
161 and warm reboot). But the accuracy of hardware autodetection
162 is usually good enough, unless running at really high DRAM
163 clocks speeds (up to 600MHz). If unsure, keep as 0.
164
Siarhei Siamashkad1336472015-02-01 00:27:05 +0200165choice
166 prompt "sunxi dram timings"
167 default DRAM_TIMINGS_VENDOR_MAGIC
168 ---help---
169 Select the timings of the DDR3 chips.
170
171config DRAM_TIMINGS_VENDOR_MAGIC
172 bool "Magic vendor timings from Android"
173 ---help---
174 The same DRAM timings as in the Allwinner boot0 bootloader.
175
176config DRAM_TIMINGS_DDR3_1066F_1333H
177 bool "JEDEC DDR3-1333H with down binning to DDR3-1066F"
178 ---help---
179 Use the timings of the standard JEDEC DDR3-1066F speed bin for
180 DRAM_CLK <= 533MHz and the timings of the DDR3-1333H speed bin
181 for DRAM_CLK > 533MHz. This covers the majority of DDR3 chips
182 used in Allwinner A10/A13/A20 devices. In the case of DDR3-1333
183 or DDR3-1600 chips, be sure to check the DRAM datasheet to confirm
184 that down binning to DDR3-1066F is supported (because DDR3-1066F
185 uses a bit faster timings than DDR3-1333H).
186
187config DRAM_TIMINGS_DDR3_800E_1066G_1333J
188 bool "JEDEC DDR3-800E / DDR3-1066G / DDR3-1333J"
189 ---help---
190 Use the timings of the slowest possible JEDEC speed bin for the
191 selected DRAM_CLK. Depending on the DRAM_CLK value, it may be
192 DDR3-800E, DDR3-1066G or DDR3-1333J.
193
194endchoice
195
Hans de Goede37781a12014-11-15 19:46:39 +0100196endif
197
Hans de Goede8975cdf2015-05-13 15:00:46 +0200198if MACH_SUN8I_A23
199config DRAM_ODT_CORRECTION
200 int "sunxi dram odt correction value"
201 default 0
202 ---help---
203 Set the dram odt correction value (range -255 - 255). In allwinner
204 fex files, this option is found in bits 8-15 of the u32 odt_en variable
205 in the [dram] section. When bit 31 of the odt_en variable is set
206 then the correction is negative. Usually the value for this is 0.
207endif
208
Iain Patone71b4222015-03-28 10:26:38 +0000209config SYS_CLK_FREQ
210 default 912000000 if MACH_SUN7I
211 default 1008000000 if MACH_SUN4I || MACH_SUN5I || MACH_SUN6I || MACH_SUN8I
212
Maxime Ripard8a6564d2014-10-03 20:16:29 +0800213config SYS_CONFIG_NAME
Ian Campbellc3be2792014-10-24 21:20:45 +0100214 default "sun4i" if MACH_SUN4I
215 default "sun5i" if MACH_SUN5I
216 default "sun6i" if MACH_SUN6I
217 default "sun7i" if MACH_SUN7I
218 default "sun8i" if MACH_SUN8I
Hans de Goede1871a8c2015-01-13 19:25:06 +0100219 default "sun9i" if MACH_SUN9I
Hans de Goede6ae66f22014-08-01 09:28:24 +0200220
Masahiro Yamadadd840582014-07-30 14:08:14 +0900221config SYS_BOARD
Masahiro Yamadadd840582014-07-30 14:08:14 +0900222 default "sunxi"
223
224config SYS_SOC
Masahiro Yamadadd840582014-07-30 14:08:14 +0900225 default "sunxi"
226
Siarhei Siamashkaf0ce28e2014-12-25 02:34:47 +0200227config UART0_PORT_F
228 bool "UART0 on MicroSD breakout board"
Siarhei Siamashkaf0ce28e2014-12-25 02:34:47 +0200229 default n
230 ---help---
231 Repurpose the SD card slot for getting access to the UART0 serial
232 console. Primarily useful only for low level u-boot debugging on
233 tablets, where normal UART0 is difficult to access and requires
234 device disassembly and/or soldering. As the SD card can't be used
235 at the same time, the system can be only booted in the FEL mode.
236 Only enable this if you really know what you are doing.
237
Hans de Goedeaccc9e42014-10-22 14:56:36 +0200238config OLD_SUNXI_KERNEL_COMPAT
239 boolean "Enable workarounds for booting old kernels"
240 default n
241 ---help---
242 Set this to enable various workarounds for old kernels, this results in
243 sub-optimal settings for newer kernels, only enable if needed.
244
Maxime Ripard44c79872015-10-15 22:04:07 +0200245config MMC
246 depends on !UART0_PORT_F
247 default y if ARCH_SUNXI
248
Hans de Goedecd821132014-10-02 20:29:26 +0200249config MMC0_CD_PIN
250 string "Card detect pin for mmc0"
251 default ""
252 ---help---
253 Set the card detect pin for mmc0, leave empty to not use cd. This
254 takes a string in the format understood by sunxi_name_to_gpio, e.g.
255 PH1 for pin 1 of port H.
256
257config MMC1_CD_PIN
258 string "Card detect pin for mmc1"
259 default ""
260 ---help---
261 See MMC0_CD_PIN help text.
262
263config MMC2_CD_PIN
264 string "Card detect pin for mmc2"
265 default ""
266 ---help---
267 See MMC0_CD_PIN help text.
268
269config MMC3_CD_PIN
270 string "Card detect pin for mmc3"
271 default ""
272 ---help---
273 See MMC0_CD_PIN help text.
274
Paul Kocialkowski8deacca2015-03-22 18:12:23 +0100275config MMC1_PINS
276 string "Pins for mmc1"
277 default ""
278 ---help---
279 Set the pins used for mmc1, when applicable. This takes a string in the
280 format understood by sunxi_name_to_gpio_bank, e.g. PH for port H.
281
282config MMC2_PINS
283 string "Pins for mmc2"
284 default ""
285 ---help---
286 See MMC1_PINS help text.
287
288config MMC3_PINS
289 string "Pins for mmc3"
290 default ""
291 ---help---
292 See MMC1_PINS help text.
293
Hans de Goede2ccfac02014-10-02 20:43:50 +0200294config MMC_SUNXI_SLOT_EXTRA
295 int "mmc extra slot number"
296 default -1
297 ---help---
298 sunxi builds always enable mmc0, some boards also have a second sdcard
299 slot or emmc on mmc1 - mmc3. Setting this to 1, 2 or 3 will enable
300 support for this.
301
Hans de Goede4458b7a2015-01-07 15:26:06 +0100302config USB0_VBUS_PIN
303 string "Vbus enable pin for usb0 (otg)"
304 default ""
305 ---help---
306 Set the Vbus enable pin for usb0 (otg). This takes a string in the
307 format understood by sunxi_name_to_gpio, e.g. PH1 for pin 1 of port H.
308
Hans de Goede52defe82015-02-16 22:13:43 +0100309config USB0_VBUS_DET
310 string "Vbus detect pin for usb0 (otg)"
Hans de Goede52defe82015-02-16 22:13:43 +0100311 default ""
312 ---help---
313 Set the Vbus detect pin for usb0 (otg). This takes a string in the
314 format understood by sunxi_name_to_gpio, e.g. PH1 for pin 1 of port H.
315
Hans de Goede48c06c92015-06-14 17:29:53 +0200316config USB0_ID_DET
317 string "ID detect pin for usb0 (otg)"
318 default ""
319 ---help---
320 Set the ID detect pin for usb0 (otg). This takes a string in the
321 format understood by sunxi_name_to_gpio, e.g. PH1 for pin 1 of port H.
322
Hans de Goede115200c2014-11-07 16:09:00 +0100323config USB1_VBUS_PIN
324 string "Vbus enable pin for usb1 (ehci0)"
325 default "PH6" if MACH_SUN4I || MACH_SUN7I
Hans de Goede76946df2014-11-07 14:51:12 +0100326 default "PH27" if MACH_SUN6I
Hans de Goede115200c2014-11-07 16:09:00 +0100327 ---help---
328 Set the Vbus enable pin for usb1 (ehci0, usb0 is the otg). This takes
329 a string in the format understood by sunxi_name_to_gpio, e.g.
330 PH1 for pin 1 of port H.
331
332config USB2_VBUS_PIN
333 string "Vbus enable pin for usb2 (ehci1)"
334 default "PH3" if MACH_SUN4I || MACH_SUN7I
Hans de Goede76946df2014-11-07 14:51:12 +0100335 default "PH24" if MACH_SUN6I
Hans de Goede115200c2014-11-07 16:09:00 +0100336 ---help---
337 See USB1_VBUS_PIN help text.
338
Paul Kocialkowski6c739c52015-04-10 23:09:52 +0200339config I2C0_ENABLE
340 bool "Enable I2C/TWI controller 0"
341 default y if MACH_SUN4I || MACH_SUN5I || MACH_SUN7I
342 default n if MACH_SUN6I || MACH_SUN8I
343 ---help---
344 This allows enabling I2C/TWI controller 0 by muxing its pins, enabling
345 its clock and setting up the bus. This is especially useful on devices
346 with slaves connected to the bus or with pins exposed through e.g. an
347 expansion port/header.
348
349config I2C1_ENABLE
350 bool "Enable I2C/TWI controller 1"
351 default n
352 ---help---
353 See I2C0_ENABLE help text.
354
355config I2C2_ENABLE
356 bool "Enable I2C/TWI controller 2"
357 default n
358 ---help---
359 See I2C0_ENABLE help text.
360
361if MACH_SUN6I || MACH_SUN7I
362config I2C3_ENABLE
363 bool "Enable I2C/TWI controller 3"
364 default n
365 ---help---
366 See I2C0_ENABLE help text.
367endif
368
Jelle van der Waa9d082682016-01-14 14:06:26 +0100369config R_I2C_ENABLE
370 bool "Enable the PRCM I2C/TWI controller"
371 default n
372 ---help---
373 Set this to y to enable the I2C controller which is part of the PRCM.
374
Paul Kocialkowski6c739c52015-04-10 23:09:52 +0200375if MACH_SUN7I
376config I2C4_ENABLE
377 bool "Enable I2C/TWI controller 4"
378 default n
379 ---help---
380 See I2C0_ENABLE help text.
381endif
382
Hans de Goede2fcf0332015-04-25 17:25:14 +0200383config AXP_GPIO
384 boolean "Enable support for gpio-s on axp PMICs"
385 default n
386 ---help---
387 Say Y here to enable support for the gpio pins of the axp PMIC ICs.
388
Luc Verhaegen7f2c5212014-08-13 07:55:06 +0200389config VIDEO
Hans de Goede2dae8002014-12-21 16:28:32 +0100390 boolean "Enable graphical uboot console on HDMI, LCD or VGA"
vishnupatekar762e24a2015-11-29 01:07:19 +0800391 depends on !MACH_SUN8I_A83T
Luc Verhaegen7f2c5212014-08-13 07:55:06 +0200392 default y
393 ---help---
Hans de Goede2dae8002014-12-21 16:28:32 +0100394 Say Y here to add support for using a cfb console on the HDMI, LCD
395 or VGA output found on most sunxi devices. See doc/README.video for
396 info on how to select the video output and mode.
397
Hans de Goede2fbf0912014-12-23 23:04:35 +0100398config VIDEO_HDMI
399 boolean "HDMI output support"
400 depends on VIDEO && !MACH_SUN8I
401 default y
402 ---help---
403 Say Y here to add support for outputting video over HDMI.
404
Hans de Goeded9786d22014-12-25 13:58:06 +0100405config VIDEO_VGA
406 boolean "VGA output support"
407 depends on VIDEO && (MACH_SUN4I || MACH_SUN7I)
408 default n
409 ---help---
410 Say Y here to add support for outputting video over VGA.
411
Hans de Goedee2bbdfb2014-12-24 12:17:07 +0100412config VIDEO_VGA_VIA_LCD
413 boolean "VGA via LCD controller support"
Chen-Yu Tsai2583d5b2015-01-12 18:02:10 +0800414 depends on VIDEO && (MACH_SUN5I || MACH_SUN6I || MACH_SUN8I)
Hans de Goedee2bbdfb2014-12-24 12:17:07 +0100415 default n
416 ---help---
417 Say Y here to add support for external DACs connected to the parallel
418 LCD interface driving a VGA connector, such as found on the
419 Olimex A13 boards.
420
Hans de Goedefb75d972015-01-25 15:33:07 +0100421config VIDEO_VGA_VIA_LCD_FORCE_SYNC_ACTIVE_HIGH
422 boolean "Force sync active high for VGA via LCD controller support"
423 depends on VIDEO_VGA_VIA_LCD
424 default n
425 ---help---
426 Say Y here if you've a board which uses opendrain drivers for the vga
427 hsync and vsync signals. Opendrain drivers cannot generate steep enough
428 positive edges for a stable video output, so on boards with opendrain
429 drivers the sync signals must always be active high.
430
Chen-Yu Tsai507e27d2015-01-12 18:02:11 +0800431config VIDEO_VGA_EXTERNAL_DAC_EN
432 string "LCD panel power enable pin"
433 depends on VIDEO_VGA_VIA_LCD
434 default ""
435 ---help---
436 Set the enable pin for the external VGA DAC. This takes a string in the
437 format understood by sunxi_name_to_gpio, e.g. PH1 for pin 1 of port H.
438
Hans de Goede39920c82015-08-03 19:20:26 +0200439config VIDEO_COMPOSITE
440 boolean "Composite video output support"
441 depends on VIDEO && (MACH_SUN4I || MACH_SUN5I || MACH_SUN7I)
442 default n
443 ---help---
444 Say Y here to add support for outputting composite video.
445
Hans de Goede2dae8002014-12-21 16:28:32 +0100446config VIDEO_LCD_MODE
447 string "LCD panel timing details"
448 depends on VIDEO
449 default ""
450 ---help---
451 LCD panel timing details string, leave empty if there is no LCD panel.
452 This is in drivers/video/videomodes.c: video_get_params() format, e.g.
453 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
Hans de Goede8addd3e2015-08-16 11:23:42 +0200454 Also see: http://linux-sunxi.org/LCD
Hans de Goede2dae8002014-12-21 16:28:32 +0100455
Hans de Goede65150322015-01-13 13:21:46 +0100456config VIDEO_LCD_DCLK_PHASE
457 int "LCD panel display clock phase"
458 depends on VIDEO
459 default 1
460 ---help---
461 Select LCD panel display clock phase shift, range 0-3.
462
Hans de Goede2dae8002014-12-21 16:28:32 +0100463config VIDEO_LCD_POWER
464 string "LCD panel power enable pin"
465 depends on VIDEO
466 default ""
467 ---help---
468 Set the power enable pin for the LCD panel. This takes a string in the
469 format understood by sunxi_name_to_gpio, e.g. PH1 for pin 1 of port H.
470
Hans de Goede242e3d82015-02-16 17:26:41 +0100471config VIDEO_LCD_RESET
472 string "LCD panel reset pin"
473 depends on VIDEO
474 default ""
475 ---help---
476 Set the reset pin for the LCD panel. This takes a string in the format
477 understood by sunxi_name_to_gpio, e.g. PH1 for pin 1 of port H.
478
Hans de Goede2dae8002014-12-21 16:28:32 +0100479config VIDEO_LCD_BL_EN
480 string "LCD panel backlight enable pin"
481 depends on VIDEO
482 default ""
483 ---help---
484 Set the backlight enable pin for the LCD panel. This takes a string in the
485 the format understood by sunxi_name_to_gpio, e.g. PH1 for pin 1 of
486 port H.
487
488config VIDEO_LCD_BL_PWM
489 string "LCD panel backlight pwm pin"
490 depends on VIDEO
491 default ""
492 ---help---
493 Set the backlight pwm pin for the LCD panel. This takes a string in the
494 format understood by sunxi_name_to_gpio, e.g. PH1 for pin 1 of port H.
Luc Verhaegen7f2c5212014-08-13 07:55:06 +0200495
Hans de Goedea7403ae2015-01-22 21:02:42 +0100496config VIDEO_LCD_BL_PWM_ACTIVE_LOW
497 bool "LCD panel backlight pwm is inverted"
498 depends on VIDEO
499 default y
500 ---help---
501 Set this if the backlight pwm output is active low.
502
Hans de Goede55410082015-02-16 17:23:25 +0100503config VIDEO_LCD_PANEL_I2C
504 bool "LCD panel needs to be configured via i2c"
505 depends on VIDEO
Hans de Goede1fc42012015-03-07 12:00:02 +0100506 default n
Hans de Goede55410082015-02-16 17:23:25 +0100507 ---help---
508 Say y here if the LCD panel needs to be configured via i2c. This
509 will add a bitbang i2c controller using gpios to talk to the LCD.
510
511config VIDEO_LCD_PANEL_I2C_SDA
512 string "LCD panel i2c interface SDA pin"
513 depends on VIDEO_LCD_PANEL_I2C
514 default "PG12"
515 ---help---
516 Set the SDA pin for the LCD i2c interface. This takes a string in the
517 format understood by sunxi_name_to_gpio, e.g. PH1 for pin 1 of port H.
518
519config VIDEO_LCD_PANEL_I2C_SCL
520 string "LCD panel i2c interface SCL pin"
521 depends on VIDEO_LCD_PANEL_I2C
522 default "PG10"
523 ---help---
524 Set the SCL pin for the LCD i2c interface. This takes a string in the
525 format understood by sunxi_name_to_gpio, e.g. PH1 for pin 1 of port H.
526
Hans de Goede213480e2015-01-01 22:04:34 +0100527
528# Note only one of these may be selected at a time! But hidden choices are
529# not supported by Kconfig
530config VIDEO_LCD_IF_PARALLEL
531 bool
532
533config VIDEO_LCD_IF_LVDS
534 bool
535
536
537choice
538 prompt "LCD panel support"
539 depends on VIDEO
540 ---help---
541 Select which type of LCD panel to support.
542
543config VIDEO_LCD_PANEL_PARALLEL
544 bool "Generic parallel interface LCD panel"
545 select VIDEO_LCD_IF_PARALLEL
546
547config VIDEO_LCD_PANEL_LVDS
548 bool "Generic lvds interface LCD panel"
549 select VIDEO_LCD_IF_LVDS
550
Siarhei Siamashka97ece832015-01-19 05:23:33 +0200551config VIDEO_LCD_PANEL_MIPI_4_LANE_513_MBPS_VIA_SSD2828
552 bool "MIPI 4-lane, 513Mbps LCD panel via SSD2828 bridge chip"
553 select VIDEO_LCD_SSD2828
554 select VIDEO_LCD_IF_PARALLEL
555 ---help---
Hans de Goedec1cfd512015-08-08 16:13:53 +0200556 7.85" 768x1024 LCD panels, such as LG LP079X01 or AUO B079XAN01.0
557
558config VIDEO_LCD_PANEL_EDP_4_LANE_1620M_VIA_ANX9804
559 bool "eDP 4-lane, 1.62G LCD panel via ANX9804 bridge chip"
560 select VIDEO_LCD_ANX9804
561 select VIDEO_LCD_IF_PARALLEL
562 select VIDEO_LCD_PANEL_I2C
563 ---help---
564 Select this for eDP LCD panels with 4 lanes running at 1.62G,
565 connected via an ANX9804 bridge chip.
Siarhei Siamashka97ece832015-01-19 05:23:33 +0200566
Hans de Goede27515b22015-01-20 09:23:36 +0100567config VIDEO_LCD_PANEL_HITACHI_TX18D42VM
568 bool "Hitachi tx18d42vm LCD panel"
569 select VIDEO_LCD_HITACHI_TX18D42VM
570 select VIDEO_LCD_IF_LVDS
571 ---help---
572 7.85" 1024x768 Hitachi tx18d42vm LCD panel support
573
Hans de Goedeaad2ac22015-02-16 17:49:47 +0100574config VIDEO_LCD_TL059WV5C0
575 bool "tl059wv5c0 LCD panel"
576 select VIDEO_LCD_PANEL_I2C
577 select VIDEO_LCD_IF_PARALLEL
578 ---help---
579 6" 480x800 tl059wv5c0 panel support, as used on the Utoo P66 and
580 Aigo M60/M608/M606 tablets.
581
Hans de Goede213480e2015-01-01 22:04:34 +0100582endchoice
583
584
Hans de Goedec13f60d2015-01-25 12:10:48 +0100585config GMAC_TX_DELAY
586 int "GMAC Transmit Clock Delay Chain"
587 default 0
588 ---help---
589 Set the GMAC Transmit Clock Delay Chain value.
590
Hans de Goedeff42d102015-09-13 13:02:48 +0200591config SPL_STACK_R_ADDR
592 default 0x4fe00000 if MACH_SUN4I || MACH_SUN5I || MACH_SUN6I || MACH_SUN7I || MACH_SUN8I
593 default 0x2fe00000 if MACH_SUN9I
594
Masahiro Yamadadd840582014-07-30 14:08:14 +0900595endif