1 /*
2 * Allwinner SoCs display driver.
3 *
4 * Copyright (C) 2016 Allwinner.
5 *
6 * This file is licensed under the terms of the GNU General Public
7 * License version 2. This program is licensed "as is" without any
8 * warranty of any kind, whether express or implied.
9 */
10
11 #include "panels.h"
12
13 struct sunxi_lcd_drv g_lcd_drv;
14
15 struct __lcd_panel *panel_array[] = {
16 #ifdef CONFIG_EINK_PANEL_USED
17 &default_eink,
18 #endif
19 &default_panel,
20 #ifdef CONFIG_LCD_SUPPORT_LT070ME05000
21 <070me05000_panel,
22 #endif
23 #ifdef CONFIG_LCD_SUPPORT_WTQ05027D01
24 &wtq05027d01_panel,
25 #endif
26 #ifdef CONFIG_LCD_SUPPORT_T27P06
27 &t27p06_panel,
28 #endif
29 #ifdef CONFIG_LCD_SUPPORT_DX0960BE40A1
30 &dx0960be40a1_panel,
31 #endif
32 #ifdef CONFIG_LCD_SUPPORT_TFT720_1280
33 &tft720_1280_panel,
34 #endif
35 #ifdef CONFIG_LCD_SUPPORT_S6D7AA0X01
36 &S6D7AA0X01_panel,
37 #endif
38 #ifdef CONFIG_LCD_SUPPORT_GG1P4062UTSW
39 &gg1p4062utsw_panel,
40 #endif
41 #ifdef CONFIG_LCD_SUPPORT_LS029B3SX02
42 &ls029b3sx02_panel,
43 #endif
44 #ifdef CONFIG_LCD_SUPPORT_HE0801A068
45 &he0801a068_panel,
46 #endif
47 #ifdef CONFIG_LCD_SUPPORT_INET_DSI_PANEL
48 &inet_dsi_panel,
49 #endif
50 #ifdef CONFIG_LCD_SUPPORT_LQ101R1SX03
51 &lq101r1sx03_panel,
52 #endif
53 #ifdef CONFIG_LCD_SUPPORT_TM_DSI_PANEL
54 &tm_dsi_panel,
55 #endif
56 #ifdef CONFIG_LCD_SUPPORT_ILI9881C
57 &ili9881c_dsi_panel,
58 #endif
59 #ifdef CONFIG_LCD_SUPPORT_FD055HD003S
60 &fd055hd003s_panel,
61 #endif
62 #ifdef CONFIG_LCD_SUPPORT_FRD450H40014
63 &frd450h40014_panel,
64 #endif
65 #ifdef CONFIG_LCD_SUPPORT_H245QBN02
66 &h245qbn02_panel,
67 #endif
68 #ifdef CONFIG_LCD_SUPPORT_ILI9341
69 &ili9341_panel,
70 #endif
71 #ifdef CONFIG_LCD_SUPPORT_LH219WQ1
72 &lh219wq1_panel,
73 #endif
74 #ifdef CONFIG_LCD_SUPPORT_ST7789V
75 &st7789v_panel,
76 #endif
77 #ifdef CONFIG_LCD_SUPPORT_ST7796S
78 &st7796s_panel,
79 #endif
80 #ifdef CONFIG_LCD_SUPPORT_ST7701S
81 &st7701s_panel,
82 #endif
83 #ifdef CONFIG_LCD_SUPPORT_T30P106
84 &t30p106_panel,
85 #endif
86 #ifdef CONFIG_LCD_SUPPORT_TO20T20000
87 &to20t20000_panel,
88 #endif
89 #ifdef CONFIG_LCD_SUPPORT_S2003T46G
90 &s2003t46g_panel,
91 #endif
92
93 #ifdef CONFIG_LCD_SUPPORT_WILLIAMLCD
94 &WilliamLcd_panel,
95 #endif
96 #ifdef CONFIG_LCD_SUPPORT_WTL096601G03
97 &wtl096601g03_panel,
98 #endif
99 #ifdef CONFIG_LCD_SUPPORT_RT13QV005D
100 &rt13qv005d_panel,
101 #endif
102 #ifdef CONFIG_LCD_SUPPORT_ST7789V_CPU
103 &st7789v_cpu_panel,
104 #endif
105
106 #ifdef CONFIG_LCD_SUPPORT_VVX07H005A10
107 &VVX07H005A10_panel,
108 #endif
109
110 #ifdef CONFIG_LCD_SUPPORT_TFT08006
111 &tft08006_panel,
112 #endif
113
114 NULL,
115 };
116
lcd_set_panel_funs(void)117 void lcd_set_panel_funs(void)
118 {
119 int i;
120
121 for (i = 0; panel_array[i] != NULL; i++) {
122 sunxi_lcd_set_panel_funs(panel_array[i]->name,
123 &panel_array[i]->func);
124 }
125 }
126
lcd_init(void)127 int lcd_init(void)
128 {
129 sunxi_disp_get_source_ops(&g_lcd_drv.src_ops);
130 lcd_set_panel_funs();
131
132 return 0;
133 }
134
135