sunxi: video: Add support for Hitachi tx18d42vm LVDS LCD panels
[oweals/u-boot.git] / board / sunxi / Kconfig
1 if ARCH_SUNXI
2
3 choice
4         prompt "Sunxi SoC Variant"
5
6 config MACH_SUN4I
7         bool "sun4i (Allwinner A10)"
8         select CPU_V7
9         select SUPPORT_SPL
10
11 config MACH_SUN5I
12         bool "sun5i (Allwinner A13)"
13         select CPU_V7
14         select SUPPORT_SPL
15
16 config MACH_SUN6I
17         bool "sun6i (Allwinner A31)"
18         select CPU_V7
19         select SUPPORT_SPL
20
21 config MACH_SUN7I
22         bool "sun7i (Allwinner A20)"
23         select CPU_V7
24         select CPU_V7_HAS_NONSEC
25         select CPU_V7_HAS_VIRT
26         select SUPPORT_SPL
27         select ARMV7_BOOT_SEC_DEFAULT if OLD_SUNXI_KERNEL_COMPAT
28
29 config MACH_SUN8I
30         bool "sun8i (Allwinner A23)"
31         select CPU_V7
32         select SUPPORT_SPL
33
34 endchoice
35
36 config DRAM_CLK
37         int "sunxi dram clock speed"
38         default 312 if MACH_SUN6I || MACH_SUN8I
39         default 360 if MACH_SUN4I || MACH_SUN5I || MACH_SUN7I
40         ---help---
41         Set the dram clock speed, valid range 240 - 480, must be a multiple
42         of 24. Note on sun4i / sun5i / sun7i this is only used by boards
43         which use dram autoconfig.
44
45 config DRAM_ZQ
46         int "sunxi dram zq value"
47         default 123 if MACH_SUN4I || MACH_SUN5I || MACH_SUN6I || MACH_SUN8I
48         default 127 if MACH_SUN7I
49         ---help---
50         Set the dram zq value. Note on sun4i / sun5i / sun7i this is only
51         used by boards which use dram autoconfig.
52
53 if MACH_SUN4I || MACH_SUN5I || MACH_SUN7I
54 config 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.
61 endif
62
63 config SYS_CONFIG_NAME
64         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
69
70 choice
71         prompt "Board"
72
73 config TARGET_A10S_OLINUXINO_M
74         bool "A10S_OLINUXINO_M"
75         depends on MACH_SUN5I
76
77 config TARGET_A13_OLINUXINOM
78         bool "A13_OLINUXINOM"
79         depends on MACH_SUN5I
80
81 config TARGET_A13_OLINUXINO
82         bool "A13_OLINUXINO"
83         depends on MACH_SUN5I
84
85 config TARGET_A20_OLINUXINO_L2
86         bool "A20_OLINUXINO_L2"
87         depends on MACH_SUN7I
88
89 config TARGET_A20_OLINUXINO_L
90         bool "A20_OLINUXINO_L"
91         depends on MACH_SUN7I
92
93 config TARGET_A20_OLINUXINO_M
94         bool "A20_OLINUXINO_M"
95         depends on MACH_SUN7I
96
97 config TARGET_AUXTEK_T004
98         bool "AUXTEK_T004"
99         depends on MACH_SUN5I
100
101 config TARGET_BANANAPI
102         bool "BANANAPI"
103         depends on MACH_SUN7I
104
105 config TARGET_BANANAPRO
106         bool "BANANAPRO"
107         depends on MACH_SUN7I
108
109 config TARGET_CUBIEBOARD2
110         bool "CUBIEBOARD2"
111         depends on MACH_SUN7I
112
113 config TARGET_CUBIETRUCK
114         bool "CUBIETRUCK"
115         depends on MACH_SUN7I
116
117 config TARGET_PCDUINO3
118         bool "PCDUINO3"
119         depends on MACH_SUN7I
120
121 config TARGET_MELE_M3
122         bool "MELE_M3"
123         depends on MACH_SUN7I
124
125 config TARGET_MK802_A10S
126         bool "MK802_A10S"
127         depends on MACH_SUN5I
128
129 config 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
142 config TARGET_I12_TVBOX
143         bool "I12_TVBOX"
144         depends on MACH_SUN7I
145
146 config TARGET_QT840A
147         bool "QT840A"
148         depends on MACH_SUN7I
149
150 config TARGET_R7DONGLE
151         bool "R7DONGLE"
152         depends on MACH_SUN5I
153
154 endchoice
155
156 config SYS_BOARD
157         default "sunxi"
158
159 config SYS_SOC
160         default "sunxi"
161
162 config SPL_FEL
163         bool "SPL/FEL mode support"
164         depends on SPL
165         default n
166
167 config 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
179 config FDTFILE
180         string "Default fdtfile env setting for this board"
181
182 config 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
189 config 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
197 config MMC1_CD_PIN
198         string "Card detect pin for mmc1"
199         default ""
200         ---help---
201         See MMC0_CD_PIN help text.
202
203 config MMC2_CD_PIN
204         string "Card detect pin for mmc2"
205         default ""
206         ---help---
207         See MMC0_CD_PIN help text.
208
209 config MMC3_CD_PIN
210         string "Card detect pin for mmc3"
211         default ""
212         ---help---
213         See MMC0_CD_PIN help text.
214
215 config 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
223 config 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
230 config USB1_VBUS_PIN
231         string "Vbus enable pin for usb1 (ehci0)"
232         default "PH6" if MACH_SUN4I || MACH_SUN7I
233         default "PH27" if MACH_SUN6I
234         ---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
239 config USB2_VBUS_PIN
240         string "Vbus enable pin for usb2 (ehci1)"
241         default "PH3" if MACH_SUN4I || MACH_SUN7I
242         default "PH24" if MACH_SUN6I
243         ---help---
244         See USB1_VBUS_PIN help text.
245
246 config VIDEO
247         boolean "Enable graphical uboot console on HDMI, LCD or VGA"
248         default y
249         ---help---
250         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
254 config 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
261 config 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
268 config VIDEO_VGA_VIA_LCD
269         boolean "VGA via LCD controller support"
270         depends on VIDEO && (MACH_SUN5I || MACH_SUN6I || MACH_SUN8I)
271         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
277 config 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
285 config 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
294 config 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
301 config 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
309 config 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
318 config 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.
325
326
327 # Note only one of these may be selected at a time! But hidden choices are
328 # not supported by Kconfig
329 config VIDEO_LCD_IF_PARALLEL
330         bool
331
332 config VIDEO_LCD_IF_LVDS
333         bool
334
335
336 choice
337         prompt "LCD panel support"
338         depends on VIDEO
339         ---help---
340         Select which type of LCD panel to support.
341
342 config VIDEO_LCD_PANEL_PARALLEL
343         bool "Generic parallel interface LCD panel"
344         select VIDEO_LCD_IF_PARALLEL
345
346 config VIDEO_LCD_PANEL_LVDS
347         bool "Generic lvds interface LCD panel"
348         select VIDEO_LCD_IF_LVDS
349
350 config VIDEO_LCD_PANEL_MIPI_4_LANE_513_MBPS_VIA_SSD2828
351         bool "MIPI 4-lane, 513Mbps LCD panel via SSD2828 bridge chip"
352         select VIDEO_LCD_SSD2828
353         select VIDEO_LCD_IF_PARALLEL
354         ---help---
355          7.85" 768x1024 LCD panels, such as LG LP079X01 or AUO B079XAN01.0
356
357 config VIDEO_LCD_PANEL_HITACHI_TX18D42VM
358         bool "Hitachi tx18d42vm LCD panel"
359         select VIDEO_LCD_HITACHI_TX18D42VM
360         select VIDEO_LCD_IF_LVDS
361         ---help---
362         7.85" 1024x768 Hitachi tx18d42vm LCD panel support
363
364 endchoice
365
366
367 config USB_MUSB_SUNXI
368         bool "Enable sunxi OTG / DRC USB controller in host mode"
369         default n
370         ---help---
371         Say y here to enable support for the sunxi OTG / DRC USB controller
372         used on almost all sunxi boards. Note currently u-boot can only have
373         one usb host controller enabled at a time, so enabling this on boards
374         which also use the ehci host controller will result in build errors.
375
376 config USB_KEYBOARD
377         boolean "Enable USB keyboard support"
378         default y
379         ---help---
380         Say Y here to add support for using a USB keyboard (typically used
381         in combination with a graphical console).
382
383 endif