aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/omapdrm
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/drm/omapdrm')
-rw-r--r--drivers/gpu/drm/omapdrm/displays/connector-dvi.c3
-rw-r--r--drivers/gpu/drm/omapdrm/displays/encoder-tfp410.c3
-rw-r--r--drivers/gpu/drm/omapdrm/displays/panel-lgphilips-lb035q02.c3
-rw-r--r--drivers/gpu/drm/omapdrm/displays/panel-nec-nl8048hl11.c3
-rw-r--r--drivers/gpu/drm/omapdrm/displays/panel-sharp-ls037v7dw01.c3
-rw-r--r--drivers/gpu/drm/omapdrm/displays/panel-sony-acx565akm.c3
-rw-r--r--drivers/gpu/drm/omapdrm/displays/panel-tpo-td028ttec1.c3
-rw-r--r--drivers/gpu/drm/omapdrm/displays/panel-tpo-td043mtea1.c3
-rw-r--r--drivers/gpu/drm/omapdrm/dss/dispc.c16
-rw-r--r--drivers/gpu/drm/omapdrm/dss/display.c9
-rw-r--r--drivers/gpu/drm/omapdrm/dss/dsi.c3
-rw-r--r--drivers/gpu/drm/omapdrm/dss/omapdss.h2
-rw-r--r--drivers/gpu/drm/omapdrm/dss/rfbi.c3
-rw-r--r--drivers/gpu/drm/omapdrm/dss/sdi.c2
-rw-r--r--drivers/gpu/drm/omapdrm/dss/venc.c8
-rw-r--r--drivers/gpu/drm/omapdrm/omap_connector.c3
16 files changed, 24 insertions, 46 deletions
diff --git a/drivers/gpu/drm/omapdrm/displays/connector-dvi.c b/drivers/gpu/drm/omapdrm/displays/connector-dvi.c
index b94bfca0ecae..6f130862db8a 100644
--- a/drivers/gpu/drm/omapdrm/displays/connector-dvi.c
+++ b/drivers/gpu/drm/omapdrm/displays/connector-dvi.c
@@ -33,11 +33,10 @@ static const struct omap_video_timings dvic_default_timings = {
33 .vsync_len = 4, 33 .vsync_len = 4,
34 .vback_porch = 7, 34 .vback_porch = 7,
35 35
36 .data_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE,
37 .sync_pclk_edge = OMAPDSS_DRIVE_SIG_FALLING_EDGE, 36 .sync_pclk_edge = OMAPDSS_DRIVE_SIG_FALLING_EDGE,
38 37
39 .flags = DISPLAY_FLAGS_HSYNC_HIGH | DISPLAY_FLAGS_VSYNC_HIGH | 38 .flags = DISPLAY_FLAGS_HSYNC_HIGH | DISPLAY_FLAGS_VSYNC_HIGH |
40 DISPLAY_FLAGS_DE_HIGH, 39 DISPLAY_FLAGS_DE_HIGH | DISPLAY_FLAGS_PIXDATA_POSEDGE,
41}; 40};
42 41
43struct panel_drv_data { 42struct panel_drv_data {
diff --git a/drivers/gpu/drm/omapdrm/displays/encoder-tfp410.c b/drivers/gpu/drm/omapdrm/displays/encoder-tfp410.c
index e3b8dddc90bd..eec079e017f0 100644
--- a/drivers/gpu/drm/omapdrm/displays/encoder-tfp410.c
+++ b/drivers/gpu/drm/omapdrm/displays/encoder-tfp410.c
@@ -115,9 +115,8 @@ static void tfp410_disable(struct omap_dss_device *dssdev)
115 115
116static void tfp410_fix_timings(struct omap_video_timings *timings) 116static void tfp410_fix_timings(struct omap_video_timings *timings)
117{ 117{
118 timings->data_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE;
119 timings->sync_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE; 118 timings->sync_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE;
120 timings->flags |= DISPLAY_FLAGS_DE_HIGH; 119 timings->flags |= DISPLAY_FLAGS_DE_HIGH | DISPLAY_FLAGS_PIXDATA_POSEDGE;
121} 120}
122 121
123static void tfp410_set_timings(struct omap_dss_device *dssdev, 122static void tfp410_set_timings(struct omap_dss_device *dssdev,
diff --git a/drivers/gpu/drm/omapdrm/displays/panel-lgphilips-lb035q02.c b/drivers/gpu/drm/omapdrm/displays/panel-lgphilips-lb035q02.c
index 7d4c59bf1950..33cdc107ed21 100644
--- a/drivers/gpu/drm/omapdrm/displays/panel-lgphilips-lb035q02.c
+++ b/drivers/gpu/drm/omapdrm/displays/panel-lgphilips-lb035q02.c
@@ -33,11 +33,10 @@ static struct omap_video_timings lb035q02_timings = {
33 .vfront_porch = 4, 33 .vfront_porch = 4,
34 .vback_porch = 18, 34 .vback_porch = 18,
35 35
36 .data_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE,
37 .sync_pclk_edge = OMAPDSS_DRIVE_SIG_FALLING_EDGE, 36 .sync_pclk_edge = OMAPDSS_DRIVE_SIG_FALLING_EDGE,
38 37
39 .flags = DISPLAY_FLAGS_HSYNC_LOW | DISPLAY_FLAGS_VSYNC_LOW | 38 .flags = DISPLAY_FLAGS_HSYNC_LOW | DISPLAY_FLAGS_VSYNC_LOW |
40 DISPLAY_FLAGS_DE_HIGH, 39 DISPLAY_FLAGS_DE_HIGH | DISPLAY_FLAGS_PIXDATA_POSEDGE,
41}; 40};
42 41
43struct panel_drv_data { 42struct panel_drv_data {
diff --git a/drivers/gpu/drm/omapdrm/displays/panel-nec-nl8048hl11.c b/drivers/gpu/drm/omapdrm/displays/panel-nec-nl8048hl11.c
index 6f7bc89ff9ee..64f6f42dbe92 100644
--- a/drivers/gpu/drm/omapdrm/displays/panel-nec-nl8048hl11.c
+++ b/drivers/gpu/drm/omapdrm/displays/panel-nec-nl8048hl11.c
@@ -76,11 +76,10 @@ static const struct omap_video_timings nec_8048_panel_timings = {
76 .vsync_len = 1, 76 .vsync_len = 1,
77 .vback_porch = 4, 77 .vback_porch = 4,
78 78
79 .data_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE,
80 .sync_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE, 79 .sync_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE,
81 80
82 .flags = DISPLAY_FLAGS_HSYNC_LOW | DISPLAY_FLAGS_VSYNC_LOW | 81 .flags = DISPLAY_FLAGS_HSYNC_LOW | DISPLAY_FLAGS_VSYNC_LOW |
83 DISPLAY_FLAGS_DE_HIGH, 82 DISPLAY_FLAGS_DE_HIGH | DISPLAY_FLAGS_PIXDATA_POSEDGE,
84}; 83};
85 84
86#define to_panel_data(p) container_of(p, struct panel_drv_data, dssdev) 85#define to_panel_data(p) container_of(p, struct panel_drv_data, dssdev)
diff --git a/drivers/gpu/drm/omapdrm/displays/panel-sharp-ls037v7dw01.c b/drivers/gpu/drm/omapdrm/displays/panel-sharp-ls037v7dw01.c
index a18dd7160df0..fb7e032209bd 100644
--- a/drivers/gpu/drm/omapdrm/displays/panel-sharp-ls037v7dw01.c
+++ b/drivers/gpu/drm/omapdrm/displays/panel-sharp-ls037v7dw01.c
@@ -49,11 +49,10 @@ static const struct omap_video_timings sharp_ls_timings = {
49 .vfront_porch = 1, 49 .vfront_porch = 1,
50 .vback_porch = 1, 50 .vback_porch = 1,
51 51
52 .data_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE,
53 .sync_pclk_edge = OMAPDSS_DRIVE_SIG_FALLING_EDGE, 52 .sync_pclk_edge = OMAPDSS_DRIVE_SIG_FALLING_EDGE,
54 53
55 .flags = DISPLAY_FLAGS_HSYNC_LOW | DISPLAY_FLAGS_VSYNC_LOW | 54 .flags = DISPLAY_FLAGS_HSYNC_LOW | DISPLAY_FLAGS_VSYNC_LOW |
56 DISPLAY_FLAGS_DE_HIGH, 55 DISPLAY_FLAGS_DE_HIGH | DISPLAY_FLAGS_PIXDATA_POSEDGE,
57}; 56};
58 57
59#define to_panel_data(p) container_of(p, struct panel_drv_data, dssdev) 58#define to_panel_data(p) container_of(p, struct panel_drv_data, dssdev)
diff --git a/drivers/gpu/drm/omapdrm/displays/panel-sony-acx565akm.c b/drivers/gpu/drm/omapdrm/displays/panel-sony-acx565akm.c
index 6aecc24d20bc..599908958066 100644
--- a/drivers/gpu/drm/omapdrm/displays/panel-sony-acx565akm.c
+++ b/drivers/gpu/drm/omapdrm/displays/panel-sony-acx565akm.c
@@ -103,11 +103,10 @@ static const struct omap_video_timings acx565akm_panel_timings = {
103 .vsync_len = 3, 103 .vsync_len = 3,
104 .vback_porch = 4, 104 .vback_porch = 4,
105 105
106 .data_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE,
107 .sync_pclk_edge = OMAPDSS_DRIVE_SIG_FALLING_EDGE, 106 .sync_pclk_edge = OMAPDSS_DRIVE_SIG_FALLING_EDGE,
108 107
109 .flags = DISPLAY_FLAGS_HSYNC_LOW | DISPLAY_FLAGS_VSYNC_LOW | 108 .flags = DISPLAY_FLAGS_HSYNC_LOW | DISPLAY_FLAGS_VSYNC_LOW |
110 DISPLAY_FLAGS_DE_HIGH, 109 DISPLAY_FLAGS_DE_HIGH | DISPLAY_FLAGS_PIXDATA_POSEDGE,
111}; 110};
112 111
113#define to_panel_data(p) container_of(p, struct panel_drv_data, dssdev) 112#define to_panel_data(p) container_of(p, struct panel_drv_data, dssdev)
diff --git a/drivers/gpu/drm/omapdrm/displays/panel-tpo-td028ttec1.c b/drivers/gpu/drm/omapdrm/displays/panel-tpo-td028ttec1.c
index 8570ad5aeb55..717b4577ac49 100644
--- a/drivers/gpu/drm/omapdrm/displays/panel-tpo-td028ttec1.c
+++ b/drivers/gpu/drm/omapdrm/displays/panel-tpo-td028ttec1.c
@@ -53,11 +53,10 @@ static struct omap_video_timings td028ttec1_panel_timings = {
53 .vsync_len = 2, 53 .vsync_len = 2,
54 .vback_porch = 2, 54 .vback_porch = 2,
55 55
56 .data_pclk_edge = OMAPDSS_DRIVE_SIG_FALLING_EDGE,
57 .sync_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE, 56 .sync_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE,
58 57
59 .flags = DISPLAY_FLAGS_HSYNC_LOW | DISPLAY_FLAGS_VSYNC_LOW | 58 .flags = DISPLAY_FLAGS_HSYNC_LOW | DISPLAY_FLAGS_VSYNC_LOW |
60 DISPLAY_FLAGS_DE_HIGH, 59 DISPLAY_FLAGS_DE_HIGH | DISPLAY_FLAGS_PIXDATA_NEGEDGE,
61}; 60};
62 61
63#define JBT_COMMAND 0x000 62#define JBT_COMMAND 0x000
diff --git a/drivers/gpu/drm/omapdrm/displays/panel-tpo-td043mtea1.c b/drivers/gpu/drm/omapdrm/displays/panel-tpo-td043mtea1.c
index 03497708c4c9..71fa7aabd062 100644
--- a/drivers/gpu/drm/omapdrm/displays/panel-tpo-td043mtea1.c
+++ b/drivers/gpu/drm/omapdrm/displays/panel-tpo-td043mtea1.c
@@ -86,11 +86,10 @@ static const struct omap_video_timings tpo_td043_timings = {
86 .vfront_porch = 39, 86 .vfront_porch = 39,
87 .vback_porch = 34, 87 .vback_porch = 34,
88 88
89 .data_pclk_edge = OMAPDSS_DRIVE_SIG_FALLING_EDGE,
90 .sync_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE, 89 .sync_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE,
91 90
92 .flags = DISPLAY_FLAGS_HSYNC_LOW | DISPLAY_FLAGS_VSYNC_LOW | 91 .flags = DISPLAY_FLAGS_HSYNC_LOW | DISPLAY_FLAGS_VSYNC_LOW |
93 DISPLAY_FLAGS_DE_HIGH, 92 DISPLAY_FLAGS_DE_HIGH | DISPLAY_FLAGS_PIXDATA_NEGEDGE,
94}; 93};
95 94
96#define to_panel_data(p) container_of(p, struct panel_drv_data, dssdev) 95#define to_panel_data(p) container_of(p, struct panel_drv_data, dssdev)
diff --git a/drivers/gpu/drm/omapdrm/dss/dispc.c b/drivers/gpu/drm/omapdrm/dss/dispc.c
index cedec84429f5..6b017e1f9245 100644
--- a/drivers/gpu/drm/omapdrm/dss/dispc.c
+++ b/drivers/gpu/drm/omapdrm/dss/dispc.c
@@ -3172,16 +3172,10 @@ static void _dispc_mgr_set_lcd_timings(enum omap_channel channel,
3172 else 3172 else
3173 de = true; 3173 de = true;
3174 3174
3175 switch (ovt->data_pclk_edge) { 3175 if (ovt->flags & DISPLAY_FLAGS_PIXDATA_POSEDGE)
3176 case OMAPDSS_DRIVE_SIG_RISING_EDGE:
3177 ipc = false; 3176 ipc = false;
3178 break; 3177 else
3179 case OMAPDSS_DRIVE_SIG_FALLING_EDGE:
3180 ipc = true; 3178 ipc = true;
3181 break;
3182 default:
3183 BUG();
3184 }
3185 3179
3186 /* always use the 'rf' setting */ 3180 /* always use the 'rf' setting */
3187 onoff = true; 3181 onoff = true;
@@ -3261,7 +3255,8 @@ void dispc_mgr_set_timings(enum omap_channel channel,
3261 DSSDBG("vsync_level %d hsync_level %d data_pclk_edge %d de_level %d sync_pclk_edge %d\n", 3255 DSSDBG("vsync_level %d hsync_level %d data_pclk_edge %d de_level %d sync_pclk_edge %d\n",
3262 !!(t.flags & DISPLAY_FLAGS_VSYNC_HIGH), 3256 !!(t.flags & DISPLAY_FLAGS_VSYNC_HIGH),
3263 !!(t.flags & DISPLAY_FLAGS_HSYNC_HIGH), 3257 !!(t.flags & DISPLAY_FLAGS_HSYNC_HIGH),
3264 t.data_pclk_edge, !!(t.flags & DISPLAY_FLAGS_DE_HIGH), 3258 !!(t.flags & DISPLAY_FLAGS_PIXDATA_POSEDGE),
3259 !!(t.flags & DISPLAY_FLAGS_DE_HIGH),
3265 t.sync_pclk_edge); 3260 t.sync_pclk_edge);
3266 3261
3267 DSSDBG("hsync %luHz, vsync %luHz\n", ht, vt); 3262 DSSDBG("hsync %luHz, vsync %luHz\n", ht, vt);
@@ -4205,11 +4200,10 @@ static const struct dispc_errata_i734_data {
4205 .pixelclock = 16000000, 4200 .pixelclock = 16000000,
4206 .hsync_len = 8, .hfront_porch = 4, .hback_porch = 4, 4201 .hsync_len = 8, .hfront_porch = 4, .hback_porch = 4,
4207 .vsync_len = 1, .vfront_porch = 1, .vback_porch = 1, 4202 .vsync_len = 1, .vfront_porch = 1, .vback_porch = 1,
4208 .data_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE,
4209 .sync_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE, 4203 .sync_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE,
4210 4204
4211 .flags = DISPLAY_FLAGS_HSYNC_LOW | DISPLAY_FLAGS_VSYNC_LOW | 4205 .flags = DISPLAY_FLAGS_HSYNC_LOW | DISPLAY_FLAGS_VSYNC_LOW |
4212 DISPLAY_FLAGS_DE_HIGH, 4206 DISPLAY_FLAGS_DE_HIGH | DISPLAY_FLAGS_PIXDATA_POSEDGE,
4213 }, 4207 },
4214 .ovli = { 4208 .ovli = {
4215 .screen_width = 1, 4209 .screen_width = 1,
diff --git a/drivers/gpu/drm/omapdrm/dss/display.c b/drivers/gpu/drm/omapdrm/dss/display.c
index 8d2fcb705ae8..1cd503cc95fe 100644
--- a/drivers/gpu/drm/omapdrm/dss/display.c
+++ b/drivers/gpu/drm/omapdrm/dss/display.c
@@ -234,11 +234,9 @@ void videomode_to_omap_video_timings(const struct videomode *vm,
234 ovt->vsync_len = vm->vsync_len; 234 ovt->vsync_len = vm->vsync_len;
235 ovt->flags = vm->flags; 235 ovt->flags = vm->flags;
236 236
237 ovt->data_pclk_edge = vm->flags & DISPLAY_FLAGS_PIXDATA_POSEDGE ? 237 ovt->sync_pclk_edge = ovt->flags & DISPLAY_FLAGS_PIXDATA_POSEDGE ?
238 OMAPDSS_DRIVE_SIG_RISING_EDGE : 238 OMAPDSS_DRIVE_SIG_RISING_EDGE :
239 OMAPDSS_DRIVE_SIG_FALLING_EDGE; 239 OMAPDSS_DRIVE_SIG_FALLING_EDGE;
240
241 ovt->sync_pclk_edge = ovt->data_pclk_edge;
242} 240}
243EXPORT_SYMBOL(videomode_to_omap_video_timings); 241EXPORT_SYMBOL(videomode_to_omap_video_timings);
244 242
@@ -258,10 +256,5 @@ void omap_video_timings_to_videomode(const struct omap_video_timings *ovt,
258 vm->vfront_porch = ovt->vfront_porch; 256 vm->vfront_porch = ovt->vfront_porch;
259 vm->vsync_len = ovt->vsync_len; 257 vm->vsync_len = ovt->vsync_len;
260 vm->flags = ovt->flags; 258 vm->flags = ovt->flags;
261
262 if (ovt->data_pclk_edge == OMAPDSS_DRIVE_SIG_RISING_EDGE)
263 vm->flags |= DISPLAY_FLAGS_PIXDATA_POSEDGE;
264 else
265 vm->flags |= DISPLAY_FLAGS_PIXDATA_NEGEDGE;
266} 259}
267EXPORT_SYMBOL(omap_video_timings_to_videomode); 260EXPORT_SYMBOL(omap_video_timings_to_videomode);
diff --git a/drivers/gpu/drm/omapdrm/dss/dsi.c b/drivers/gpu/drm/omapdrm/dss/dsi.c
index e0532c75acdc..ba3a2da7c80d 100644
--- a/drivers/gpu/drm/omapdrm/dss/dsi.c
+++ b/drivers/gpu/drm/omapdrm/dss/dsi.c
@@ -4127,7 +4127,8 @@ static int dsi_display_init_dispc(struct platform_device *dsidev,
4127 dsi->timings.flags |= DISPLAY_FLAGS_HSYNC_HIGH; 4127 dsi->timings.flags |= DISPLAY_FLAGS_HSYNC_HIGH;
4128 dsi->timings.flags &= ~DISPLAY_FLAGS_VSYNC_LOW; 4128 dsi->timings.flags &= ~DISPLAY_FLAGS_VSYNC_LOW;
4129 dsi->timings.flags |= DISPLAY_FLAGS_VSYNC_HIGH; 4129 dsi->timings.flags |= DISPLAY_FLAGS_VSYNC_HIGH;
4130 dsi->timings.data_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE; 4130 dsi->timings.flags &= ~DISPLAY_FLAGS_PIXDATA_NEGEDGE;
4131 dsi->timings.flags |= DISPLAY_FLAGS_PIXDATA_POSEDGE;
4131 dsi->timings.flags &= ~DISPLAY_FLAGS_DE_LOW; 4132 dsi->timings.flags &= ~DISPLAY_FLAGS_DE_LOW;
4132 dsi->timings.flags |= DISPLAY_FLAGS_DE_HIGH; 4133 dsi->timings.flags |= DISPLAY_FLAGS_DE_HIGH;
4133 dsi->timings.sync_pclk_edge = OMAPDSS_DRIVE_SIG_FALLING_EDGE; 4134 dsi->timings.sync_pclk_edge = OMAPDSS_DRIVE_SIG_FALLING_EDGE;
diff --git a/drivers/gpu/drm/omapdrm/dss/omapdss.h b/drivers/gpu/drm/omapdrm/dss/omapdss.h
index 342993154d6d..1bc186110106 100644
--- a/drivers/gpu/drm/omapdrm/dss/omapdss.h
+++ b/drivers/gpu/drm/omapdrm/dss/omapdss.h
@@ -319,8 +319,6 @@ struct omap_video_timings {
319 /* Unit: line clocks */ 319 /* Unit: line clocks */
320 u16 vback_porch; /* Vertical back porch */ 320 u16 vback_porch; /* Vertical back porch */
321 321
322 /* Pixel clock edge to drive LCD data */
323 enum omap_dss_signal_edge data_pclk_edge;
324 /* Pixel clock edges to drive HSYNC and VSYNC signals */ 322 /* Pixel clock edges to drive HSYNC and VSYNC signals */
325 enum omap_dss_signal_edge sync_pclk_edge; 323 enum omap_dss_signal_edge sync_pclk_edge;
326 324
diff --git a/drivers/gpu/drm/omapdrm/dss/rfbi.c b/drivers/gpu/drm/omapdrm/dss/rfbi.c
index 449d6aafb71f..7a9598e93bc9 100644
--- a/drivers/gpu/drm/omapdrm/dss/rfbi.c
+++ b/drivers/gpu/drm/omapdrm/dss/rfbi.c
@@ -870,7 +870,8 @@ static void rfbi_config_lcd_manager(struct omap_dss_device *dssdev)
870 rfbi.timings.flags |= DISPLAY_FLAGS_HSYNC_HIGH; 870 rfbi.timings.flags |= DISPLAY_FLAGS_HSYNC_HIGH;
871 rfbi.timings.flags &= ~DISPLAY_FLAGS_VSYNC_LOW; 871 rfbi.timings.flags &= ~DISPLAY_FLAGS_VSYNC_LOW;
872 rfbi.timings.flags |= DISPLAY_FLAGS_VSYNC_HIGH; 872 rfbi.timings.flags |= DISPLAY_FLAGS_VSYNC_HIGH;
873 rfbi.timings.data_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE; 873 rfbi.timings.flags &= ~DISPLAY_FLAGS_PIXDATA_NEGEDGE;
874 rfbi.timings.flags |= DISPLAY_FLAGS_PIXDATA_POSEDGE;
874 rfbi.timings.flags &= ~DISPLAY_FLAGS_DE_LOW; 875 rfbi.timings.flags &= ~DISPLAY_FLAGS_DE_LOW;
875 rfbi.timings.flags |= DISPLAY_FLAGS_DE_HIGH; 876 rfbi.timings.flags |= DISPLAY_FLAGS_DE_HIGH;
876 rfbi.timings.sync_pclk_edge = OMAPDSS_DRIVE_SIG_FALLING_EDGE; 877 rfbi.timings.sync_pclk_edge = OMAPDSS_DRIVE_SIG_FALLING_EDGE;
diff --git a/drivers/gpu/drm/omapdrm/dss/sdi.c b/drivers/gpu/drm/omapdrm/dss/sdi.c
index 0a96c321ce62..a886f9051b33 100644
--- a/drivers/gpu/drm/omapdrm/dss/sdi.c
+++ b/drivers/gpu/drm/omapdrm/dss/sdi.c
@@ -151,7 +151,7 @@ static int sdi_display_enable(struct omap_dss_device *dssdev)
151 goto err_get_dispc; 151 goto err_get_dispc;
152 152
153 /* 15.5.9.1.2 */ 153 /* 15.5.9.1.2 */
154 t->data_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE; 154 t->flags |= DISPLAY_FLAGS_PIXDATA_POSEDGE;
155 t->sync_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE; 155 t->sync_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE;
156 156
157 r = sdi_calc_clock_div(t->pixelclock, &fck, &dispc_cinfo); 157 r = sdi_calc_clock_div(t->pixelclock, &fck, &dispc_cinfo);
diff --git a/drivers/gpu/drm/omapdrm/dss/venc.c b/drivers/gpu/drm/omapdrm/dss/venc.c
index 8657e3c09e32..82d0cda9a499 100644
--- a/drivers/gpu/drm/omapdrm/dss/venc.c
+++ b/drivers/gpu/drm/omapdrm/dss/venc.c
@@ -273,11 +273,11 @@ const struct omap_video_timings omap_dss_pal_timings = {
273 .vfront_porch = 5, 273 .vfront_porch = 5,
274 .vback_porch = 41, 274 .vback_porch = 41,
275 275
276 .data_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE,
277 .sync_pclk_edge = OMAPDSS_DRIVE_SIG_FALLING_EDGE, 276 .sync_pclk_edge = OMAPDSS_DRIVE_SIG_FALLING_EDGE,
278 277
279 .flags = DISPLAY_FLAGS_INTERLACED | DISPLAY_FLAGS_HSYNC_LOW | 278 .flags = DISPLAY_FLAGS_INTERLACED | DISPLAY_FLAGS_HSYNC_LOW |
280 DISPLAY_FLAGS_VSYNC_LOW | DISPLAY_FLAGS_DE_HIGH, 279 DISPLAY_FLAGS_VSYNC_LOW | DISPLAY_FLAGS_DE_HIGH |
280 DISPLAY_FLAGS_PIXDATA_POSEDGE,
281}; 281};
282EXPORT_SYMBOL(omap_dss_pal_timings); 282EXPORT_SYMBOL(omap_dss_pal_timings);
283 283
@@ -292,11 +292,11 @@ const struct omap_video_timings omap_dss_ntsc_timings = {
292 .vfront_porch = 6, 292 .vfront_porch = 6,
293 .vback_porch = 31, 293 .vback_porch = 31,
294 294
295 .data_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE,
296 .sync_pclk_edge = OMAPDSS_DRIVE_SIG_FALLING_EDGE, 295 .sync_pclk_edge = OMAPDSS_DRIVE_SIG_FALLING_EDGE,
297 296
298 .flags = DISPLAY_FLAGS_INTERLACED | DISPLAY_FLAGS_HSYNC_LOW | 297 .flags = DISPLAY_FLAGS_INTERLACED | DISPLAY_FLAGS_HSYNC_LOW |
299 DISPLAY_FLAGS_VSYNC_LOW | DISPLAY_FLAGS_DE_HIGH, 298 DISPLAY_FLAGS_VSYNC_LOW | DISPLAY_FLAGS_DE_HIGH |
299 DISPLAY_FLAGS_PIXDATA_POSEDGE,
300}; 300};
301EXPORT_SYMBOL(omap_dss_ntsc_timings); 301EXPORT_SYMBOL(omap_dss_ntsc_timings);
302 302
diff --git a/drivers/gpu/drm/omapdrm/omap_connector.c b/drivers/gpu/drm/omapdrm/omap_connector.c
index f3e9bcf1f784..5fa15da78a8c 100644
--- a/drivers/gpu/drm/omapdrm/omap_connector.c
+++ b/drivers/gpu/drm/omapdrm/omap_connector.c
@@ -107,8 +107,7 @@ void copy_timings_drm_to_omap(struct omap_video_timings *timings,
107 else 107 else
108 timings->flags |= DISPLAY_FLAGS_VSYNC_LOW; 108 timings->flags |= DISPLAY_FLAGS_VSYNC_LOW;
109 109
110 timings->data_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE; 110 timings->flags |= DISPLAY_FLAGS_DE_HIGH | DISPLAY_FLAGS_PIXDATA_POSEDGE;
111 timings->flags |= DISPLAY_FLAGS_DE_HIGH;
112 timings->sync_pclk_edge = OMAPDSS_DRIVE_SIG_FALLING_EDGE; 111 timings->sync_pclk_edge = OMAPDSS_DRIVE_SIG_FALLING_EDGE;
113} 112}
114 113