diff options
author | NeilBrown <neilb@suse.de> | 2012-12-02 15:18:22 +1100 |
---|---|---|
committer | Denis 'GNUtoo' Carikli <GNUtoo@no-log.org> | 2013-03-09 14:43:46 +0100 |
commit | 83d68e3f8edd8fc1d04380dec29c0e660c6d3b7b (patch) | |
tree | b8f77e7e2a6edaa8c2e8c279ab27a174b1abfff8 | |
parent | f8d44af473e8ad9043f6bbd6165691d8a209ec2e (diff) | |
download | kernel_goldelico_gta04-83d68e3f8edd8fc1d04380dec29c0e660c6d3b7b.zip kernel_goldelico_gta04-83d68e3f8edd8fc1d04380dec29c0e660c6d3b7b.tar.gz kernel_goldelico_gta04-83d68e3f8edd8fc1d04380dec29c0e660c6d3b7b.tar.bz2 |
panel-tpo-td028ttec1.c updates fror 3.7
various magic copied from changes to other drivers.
Signed-off-by: NeilBrown <neilb@suse.de>
-rw-r--r-- | drivers/video/omap2/displays/panel-tpo-td028ttec1.c | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/drivers/video/omap2/displays/panel-tpo-td028ttec1.c b/drivers/video/omap2/displays/panel-tpo-td028ttec1.c index 2d7dc75..48cc10b 100644 --- a/drivers/video/omap2/displays/panel-tpo-td028ttec1.c +++ b/drivers/video/omap2/displays/panel-tpo-td028ttec1.c @@ -34,13 +34,20 @@ static struct omap_video_timings td028ttec1_panel_timings = { .x_res = 480, .y_res = 640, -.pixel_clock = 22000, +.pixel_clock = 22153, .hfp = 24, .hsw = 8, .hbp = 8, .vfp = 4, .vsw = 2, .vbp = 2, + +.vsync_level = OMAPDSS_SIG_ACTIVE_LOW, +.hsync_level = OMAPDSS_SIG_ACTIVE_LOW, + +.data_pclk_edge = OMAPDSS_DRIVE_SIG_FALLING_EDGE, +.de_level = OMAPDSS_SIG_ACTIVE_HIGH, +.sync_pclk_edge = OMAPDSS_DRIVE_SIG_OPPOSITE_EDGES, }; struct jbt_info { @@ -147,8 +154,6 @@ int jbt_reg_write16(struct jbt_info *jbt, u_int8_t reg, u_int16_t data) int jbt_reg_init(void) { - int i; - int failed=0; int r; printk("jbt_reg_init()\n"); @@ -261,7 +266,6 @@ static int td028ttec1_panel_probe(struct omap_dss_device *dssdev) int rc; printk("td028ttec1_panel_probe()\n"); - dssdev->panel.config = OMAP_DSS_LCD_TFT | OMAP_DSS_LCD_ONOFF | OMAP_DSS_LCD_IPC | OMAP_DSS_LCD_IVS | OMAP_DSS_LCD_IHS; dssdev->panel.acb = 0x28; dssdev->panel.timings = td028ttec1_panel_timings; @@ -284,7 +288,7 @@ static int td028ttec1_panel_suspend(struct omap_dss_device *dssdev) printk("td028ttec1_panel_suspend()\n"); if (dssdev->state != OMAP_DSS_DISPLAY_ACTIVE) - return; + return 0; omapdss_dpi_display_disable(dssdev); @@ -377,6 +381,8 @@ static int td028ttec1_panel_resume(struct omap_dss_device *dssdev) jbt_reg_write_nodata(jbt, JBT_REG_DISPLAY_ON); + omapdss_dpi_set_timings(dssdev, &dssdev->panel.timings); + omapdss_dpi_set_data_lines(dssdev, dssdev->phy.dpi.data_lines); rc = omapdss_dpi_display_enable(dssdev); if(rc) return -EIO; @@ -444,7 +450,8 @@ static void td028ttec1_panel_disable(struct omap_dss_device *dssdev) static void td028ttec1_panel_set_timings(struct omap_dss_device *dssdev, struct omap_video_timings *timings) { - dpi_set_timings(dssdev, timings); + omapdss_dpi_set_timings(dssdev, timings); + dssdev->panel.timings = *timings; } static void td028ttec1_panel_get_timings(struct omap_dss_device *dssdev, |