5 * Stefano Babic, DENX Software Engineering, sbabic@denx.de.
7 * Copyright (C) 2008-2009 MontaVista Software Inc.
8 * Copyright (C) 2008-2009 Texas Instruments Inc
10 * Based on the LCD driver for TI Avalanche processors written by
11 * Ajay Singh and Shalom Hai.
13 * This program is free software; you can redistribute it and/or modify
14 * it under the terms of the GNU General Public License as published by
15 * the Free Software Foundation; either version 2 of the License, or
16 * (at your option)any later version.
18 * This program is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU General Public License for more details.
23 * You should have received a copy of the GNU General Public License
24 * along with this program; if not, write to the Free Software
25 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
41 enum raster_load_mode {
46 struct display_panel {
47 enum panel_type panel_type; /* QVGA */
50 enum panel_shade panel_shade;
54 const char name[25]; /* Full name <vendor>_<model> */
56 unsigned short height;
57 int hfp; /* Horizontal front porch */
58 int hbp; /* Horizontal back porch */
59 int hsw; /* Horizontal Sync Pulse Width */
60 int vfp; /* Vertical front porch */
61 int vbp; /* Vertical back porch */
62 int vsw; /* Vertical Sync Pulse Width */
63 unsigned int pxl_clk; /* Pixel clock */
64 unsigned char invert_pxl_clk; /* Invert Pixel clock */
67 struct da8xx_lcdc_platform_data {
68 const char manu_name[10];
69 void *controller_data;
71 void (*panel_power_ctrl)(int);
74 struct lcd_ctrl_config {
75 const struct display_panel *p_disp_panel;
77 /* AC Bias Pin Frequency */
80 /* AC Bias Pin Transitions per Interrupt */
89 /* FIFO DMA Request Delay */
92 /* TFT Alternative Signal Mapping (Only for active) */
93 unsigned char tft_alt_mode;
95 /* 12 Bit Per Pixel (5-6-5) Mode (Only for passive) */
96 unsigned char stn_565_mode;
98 /* Mono 8-bit Mode: 1=D0-D7 or 0=D0-D3 */
99 unsigned char mono_8bit_mode;
101 /* Invert line clock */
102 unsigned char invert_line_clock;
104 /* Invert frame clock */
105 unsigned char invert_frm_clock;
107 /* Horizontal and Vertical Sync Edge: 0=rising 1=falling */
108 unsigned char sync_edge;
110 /* Horizontal and Vertical Sync: Control: 0=ignore */
111 unsigned char sync_ctrl;
113 /* Raster Data Order Select: 1=Most-to-least 0=Least-to-most */
114 unsigned char raster_order;
117 struct lcd_sync_arg {
123 void da8xx_video_init(const struct da8xx_panel *panel, int bits_pixel);
125 #endif /* ifndef DA8XX_FB_H */