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#include <video/omapdss.h> 31#include <video/display_timing.h> 32 33struct omap_dss_device; 34 35/** 36 * encoder_tfp410 platform data 37 * @name: name for this display entity 38 * @power_down_gpio: gpio number for PD pin (or -1 if not available) 39 * @data_lines: number of DPI datalines 40 */ 41struct encoder_tfp410_platform_data { 42 const char *name; 43 const char *source; 44 int power_down_gpio; 45 int data_lines; 46}; 47 48/** 49 * encoder_tpd12s015 platform data 50 * @name: name for this display entity 51 * @ct_cp_hpd_gpio: CT_CP_HPD gpio number 52 * @ls_oe_gpio: LS_OE gpio number 53 * @hpd_gpio: HPD gpio number 54 */ 55struct encoder_tpd12s015_platform_data { 56 const char *name; 57 const char *source; 58 59 int ct_cp_hpd_gpio; 60 int ls_oe_gpio; 61 int hpd_gpio; 62}; 63 64/** 65 * connector_dvi platform data 66 * @name: name for this display entity 67 * @source: name of the display entity used as a video source 68 * @i2c_bus_num: i2c bus number to be used for reading EDID 69 */ 70struct connector_dvi_platform_data { 71 const char *name; 72 const char *source; 73 int i2c_bus_num; 74}; 75 76/** 77 * connector_hdmi platform data 78 * @name: name for this display entity 79 * @source: name of the display entity used as a video source 80 */ 81struct connector_hdmi_platform_data { 82 const char *name; 83 const char *source; 84}; 85 86/** 87 * connector_atv platform data 88 * @name: name for this display entity 89 * @source: name of the display entity used as a video source 90 * @connector_type: composite/svideo 91 * @invert_polarity: invert signal polarity 92 */ 93struct connector_atv_platform_data { 94 const char *name; 95 const char *source; 96 97 enum omap_dss_venc_type connector_type; 98 bool invert_polarity; 99}; 100 101/** 102 * panel_dpi platform data 103 * @name: name for this display entity 104 * @source: name of the display entity used as a video source 105 * @data_lines: number of DPI datalines 106 * @display_timing: timings for this panel 107 * @backlight_gpio: gpio to enable/disable the backlight (or -1) 108 * @enable_gpio: gpio to enable/disable the panel (or -1) 109 */ 110struct panel_dpi_platform_data { 111 const char *name; 112 const char *source; 113 114 int data_lines; 115 116 const struct display_timing *display_timing; 117 118 int backlight_gpio; 119 int enable_gpio; 120}; 121 122/** 123 * panel_dsicm platform data 124 * @name: name for this display entity 125 * @source: name of the display entity used as a video source 126 * @reset_gpio: gpio to reset the panel (or -1) 127 * @use_ext_te: use external TE GPIO 128 * @ext_te_gpio: external TE GPIO 129 * @ulps_timeout: time to wait before entering ULPS, 0 = disabled (ms) 130 * @use_dsi_backlight: true if panel uses DSI command to control backlight 131 * @pin_config: DSI pin configuration 132 */ 133struct panel_dsicm_platform_data { 134 const char *name; 135 const char *source; 136 137 int reset_gpio; 138 139 bool use_ext_te; 140 int ext_te_gpio; 141 142 unsigned ulps_timeout; 143 144 bool use_dsi_backlight; 145 146 struct omap_dsi_pin_config pin_config; 147}; 148 149/** 150 * panel_acx565akm platform data 151 * @name: name for this display entity 152 * @source: name of the display entity used as a video source 153 * @reset_gpio: gpio to reset the panel (or -1) 154 * @datapairs: number of SDI datapairs 155 */ 156struct panel_acx565akm_platform_data { 157 const char *name; 158 const char *source; 159 160 int reset_gpio; 161 162 int datapairs; 163}; 164 165/** 166 * panel_lb035q02 platform data 167 * @name: name for this display entity 168 * @source: name of the display entity used as a video source 169 * @data_lines: number of DPI datalines 170 * @backlight_gpio: gpio to enable/disable the backlight (or -1) 171 * @enable_gpio: gpio to enable/disable the panel (or -1) 172 */ 173struct panel_lb035q02_platform_data { 174 const char *name; 175 const char *source; 176 177 int data_lines; 178 179 int backlight_gpio; 180 int enable_gpio; 181}; 182 183/** 184 * panel_sharp_ls037v7dw01 platform data 185 * @name: name for this display entity 186 * @source: name of the display entity used as a video source 187 * @data_lines: number of DPI datalines 188 * @resb_gpio: reset signal GPIO 189 * @ini_gpio: power on control GPIO 190 * @mo_gpio: selection for resolution(VGA/QVGA) GPIO 191 * @lr_gpio: selection for horizontal scanning direction GPIO 192 * @ud_gpio: selection for vertical scanning direction GPIO 193 */ 194struct panel_sharp_ls037v7dw01_platform_data { 195 const char *name; 196 const char *source; 197 198 int data_lines; 199 200 int resb_gpio; 201 int ini_gpio; 202 int mo_gpio; 203 int lr_gpio; 204 int ud_gpio; 205}; 206 207/** 208 * panel-tpo-td043mtea1 platform data 209 * @name: name for this display entity 210 * @source: name of the display entity used as a video source 211 * @data_lines: number of DPI datalines 212 * @nreset_gpio: reset signal 213 */ 214struct panel_tpo_td043mtea1_platform_data { 215 const char *name; 216 const char *source; 217 218 int data_lines; 219 220 int nreset_gpio; 221}; 222 223/** 224 * panel-nec-nl8048hl11 platform data 225 * @name: name for this display entity 226 * @source: name of the display entity used as a video source 227 * @data_lines: number of DPI datalines 228 * @res_gpio: reset signal 229 * @qvga_gpio: selection for resolution(QVGA/WVGA) 230 */ 231struct panel_nec_nl8048hl11_platform_data { 232 const char *name; 233 const char *source; 234 235 int data_lines; 236 237 int res_gpio; 238 int qvga_gpio; 239}; 240 241/** 242 * panel-tpo-td028ttec1 platform data 243 * @name: name for display entity 244 * @source: name of the display entity used as a video source 245 * @data_lines: number of DPI datalines 246 */ 247struct panel_tpo_td028ttec1_platform_data { 248 const char *name; 249 const char *source; 250 251 int data_lines; 252}; 253 254#endif /* __OMAP_PANEL_DATA_H */ 255