]>
Commit | Line | Data |
---|---|---|
a0d8dde9 AT |
1 | /* |
2 | * Header containing platform_data structs for omap panels | |
3 | * | |
4 | * Copyright (C) 2013 Texas Instruments | |
5 | * Author: Tomi Valkeinen <tomi.valkeinen@ti.com> | |
6 | * Archit Taneja <archit@ti.com> | |
7 | * | |
8 | * Copyright (C) 2011 Texas Instruments | |
9 | * Author: Mayuresh Janorkar <mayur@ti.com> | |
10 | * | |
11 | * Copyright (C) 2010 Canonical Ltd. | |
12 | * Author: Bryan Wu <bryan.wu@canonical.com> | |
13 | * | |
14 | * This program is free software; you can redistribute it and/or modify it | |
15 | * under the terms of the GNU General Public License version 2 as published by | |
16 | * the Free Software Foundation. | |
17 | * | |
18 | * This program is distributed in the hope that it will be useful, but WITHOUT | |
19 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | |
20 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for | |
21 | * more details. | |
22 | * | |
23 | * You should have received a copy of the GNU General Public License along with | |
24 | * this program. If not, see <http://www.gnu.org/licenses/>. | |
25 | */ | |
26 | ||
27 | #ifndef __OMAP_PANEL_DATA_H | |
28 | #define __OMAP_PANEL_DATA_H | |
29 | ||
30 | struct omap_dss_device; | |
31 | ||
32 | /** | |
33 | * struct panel_generic_dpi_data - panel driver configuration data | |
34 | * @name: panel name | |
35 | * @platform_enable: platform specific panel enable function | |
36 | * @platform_disable: platform specific panel disable function | |
c3f80cbc TV |
37 | * @num_gpios: number of gpios connected to panel |
38 | * @gpios: gpio numbers on the platform | |
39 | * @gpio_invert: configure gpio as active high or low | |
a0d8dde9 AT |
40 | */ |
41 | struct panel_generic_dpi_data { | |
42 | const char *name; | |
43 | int (*platform_enable)(struct omap_dss_device *dssdev); | |
44 | void (*platform_disable)(struct omap_dss_device *dssdev); | |
c3f80cbc TV |
45 | |
46 | int num_gpios; | |
47 | int gpios[10]; | |
48 | bool gpio_invert[10]; | |
a0d8dde9 AT |
49 | }; |
50 | ||
51 | /** | |
52 | * struct panel_n8x0_data - N800 panel driver configuration data | |
53 | */ | |
54 | struct panel_n8x0_data { | |
55 | int (*platform_enable)(struct omap_dss_device *dssdev); | |
56 | void (*platform_disable)(struct omap_dss_device *dssdev); | |
57 | int panel_reset; | |
58 | int ctrl_pwrdown; | |
a0d8dde9 AT |
59 | }; |
60 | ||
61 | /** | |
62 | * struct nokia_dsi_panel_data - Nokia DSI panel driver configuration data | |
63 | * @name: panel name | |
64 | * @use_ext_te: use external TE | |
65 | * @ext_te_gpio: external TE GPIO | |
66 | * @esd_interval: interval of ESD checks, 0 = disabled (ms) | |
67 | * @ulps_timeout: time to wait before entering ULPS, 0 = disabled (ms) | |
68 | * @use_dsi_backlight: true if panel uses DSI command to control backlight | |
69 | * @pin_config: DSI pin configuration | |
70 | */ | |
71 | ||
72 | struct nokia_dsi_panel_data { | |
73 | const char *name; | |
74 | ||
75 | int reset_gpio; | |
76 | ||
77 | bool use_ext_te; | |
78 | int ext_te_gpio; | |
79 | ||
80 | unsigned esd_interval; | |
81 | unsigned ulps_timeout; | |
82 | ||
83 | bool use_dsi_backlight; | |
84 | ||
85 | struct omap_dsi_pin_config pin_config; | |
86 | }; | |
87 | ||
88 | /** | |
89 | * struct picodlp_panel_data - picodlp panel driver configuration data | |
90 | * @picodlp_adapter_id: i2c_adapter number for picodlp | |
91 | */ | |
92 | struct picodlp_panel_data { | |
93 | int picodlp_adapter_id; | |
94 | int emu_done_gpio; | |
95 | int pwrgood_gpio; | |
96 | }; | |
97 | ||
98 | /** | |
99 | * struct tfp410_platform_data - tfp410 panel driver configuration data | |
100 | * @i2c_bus_num: i2c bus id for the panel | |
101 | * @power_down_gpio: gpio number for PD pin (or -1 if not available) | |
102 | */ | |
103 | struct tfp410_platform_data { | |
104 | int i2c_bus_num; | |
105 | int power_down_gpio; | |
106 | }; | |
107 | ||
c3f80cbc TV |
108 | /** |
109 | * sharp ls panel driver configuration data | |
110 | * @resb_gpio: reset signal | |
111 | * @ini_gpio: power on control | |
112 | * @mo_gpio: selection for resolution(VGA/QVGA) | |
113 | * @lr_gpio: selection for horizontal scanning direction | |
114 | * @ud_gpio: selection for vertical scanning direction | |
115 | */ | |
116 | struct panel_sharp_ls037v7dw01_data { | |
117 | int resb_gpio; | |
118 | int ini_gpio; | |
119 | int mo_gpio; | |
120 | int lr_gpio; | |
121 | int ud_gpio; | |
122 | }; | |
123 | ||
124 | /** | |
125 | * acx565akm panel driver configuration data | |
126 | * @reset_gpio: reset signal | |
127 | */ | |
128 | struct panel_acx565akm_data { | |
129 | int reset_gpio; | |
130 | }; | |
131 | ||
132 | /** | |
133 | * nec nl8048 panel driver configuration data | |
134 | * @res_gpio: reset signal | |
135 | * @qvga_gpio: selection for resolution(QVGA/WVGA) | |
136 | */ | |
137 | struct panel_nec_nl8048_data { | |
138 | int res_gpio; | |
139 | int qvga_gpio; | |
140 | }; | |
141 | ||
142 | /** | |
143 | * tpo td043 panel driver configuration data | |
144 | * @nreset_gpio: reset signal | |
145 | */ | |
146 | struct panel_tpo_td043_data { | |
147 | int nreset_gpio; | |
148 | }; | |
149 | ||
2773fefb TV |
150 | /** |
151 | * encoder_tfp410 platform data | |
152 | * @name: name for this display entity | |
153 | * @power_down_gpio: gpio number for PD pin (or -1 if not available) | |
154 | * @data_lines: number of DPI datalines | |
155 | */ | |
156 | struct encoder_tfp410_platform_data { | |
157 | const char *name; | |
158 | const char *source; | |
159 | int power_down_gpio; | |
160 | int data_lines; | |
161 | }; | |
162 | ||
a0d8dde9 | 163 | #endif /* __OMAP_PANEL_DATA_H */ |