aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/video/omap2/displays/panel-generic-dpi.c1
-rw-r--r--drivers/video/omap2/displays/panel-lgphilips-lb035q02.c1
-rw-r--r--drivers/video/omap2/displays/panel-nec-nl8048hl11-01b.c1
-rw-r--r--drivers/video/omap2/displays/panel-picodlp.c1
-rw-r--r--drivers/video/omap2/displays/panel-sharp-ls037v7dw01.c1
-rw-r--r--drivers/video/omap2/displays/panel-tfp410.c1
-rw-r--r--drivers/video/omap2/displays/panel-tpo-td043mtea1.c1
-rw-r--r--drivers/video/omap2/dss/dpi.c13
-rw-r--r--include/video/omapdss.h1
9 files changed, 20 insertions, 1 deletions
diff --git a/drivers/video/omap2/displays/panel-generic-dpi.c b/drivers/video/omap2/displays/panel-generic-dpi.c
index a07e18c8f71b..88295c526815 100644
--- a/drivers/video/omap2/displays/panel-generic-dpi.c
+++ b/drivers/video/omap2/displays/panel-generic-dpi.c
@@ -566,6 +566,7 @@ static int generic_dpi_panel_power_on(struct omap_dss_device *dssdev)
566 return 0; 566 return 0;
567 567
568 omapdss_dpi_set_timings(dssdev, &dssdev->panel.timings); 568 omapdss_dpi_set_timings(dssdev, &dssdev->panel.timings);
569 omapdss_dpi_set_data_lines(dssdev, dssdev->phy.dpi.data_lines);
569 570
570 r = omapdss_dpi_display_enable(dssdev); 571 r = omapdss_dpi_display_enable(dssdev);
571 if (r) 572 if (r)
diff --git a/drivers/video/omap2/displays/panel-lgphilips-lb035q02.c b/drivers/video/omap2/displays/panel-lgphilips-lb035q02.c
index 7e52aee36f4f..90c1cabf244e 100644
--- a/drivers/video/omap2/displays/panel-lgphilips-lb035q02.c
+++ b/drivers/video/omap2/displays/panel-lgphilips-lb035q02.c
@@ -56,6 +56,7 @@ static int lb035q02_panel_power_on(struct omap_dss_device *dssdev)
56 return 0; 56 return 0;
57 57
58 omapdss_dpi_set_timings(dssdev, &dssdev->panel.timings); 58 omapdss_dpi_set_timings(dssdev, &dssdev->panel.timings);
59 omapdss_dpi_set_data_lines(dssdev, dssdev->phy.dpi.data_lines);
59 60
60 r = omapdss_dpi_display_enable(dssdev); 61 r = omapdss_dpi_display_enable(dssdev);
61 if (r) 62 if (r)
diff --git a/drivers/video/omap2/displays/panel-nec-nl8048hl11-01b.c b/drivers/video/omap2/displays/panel-nec-nl8048hl11-01b.c
index e501c401ccb0..908fd268f3dc 100644
--- a/drivers/video/omap2/displays/panel-nec-nl8048hl11-01b.c
+++ b/drivers/video/omap2/displays/panel-nec-nl8048hl11-01b.c
@@ -176,6 +176,7 @@ static int nec_8048_panel_power_on(struct omap_dss_device *dssdev)
176 return 0; 176 return 0;
177 177
178 omapdss_dpi_set_timings(dssdev, &dssdev->panel.timings); 178 omapdss_dpi_set_timings(dssdev, &dssdev->panel.timings);
179 omapdss_dpi_set_data_lines(dssdev, dssdev->phy.dpi.data_lines);
179 180
180 r = omapdss_dpi_display_enable(dssdev); 181 r = omapdss_dpi_display_enable(dssdev);
181 if (r) 182 if (r)
diff --git a/drivers/video/omap2/displays/panel-picodlp.c b/drivers/video/omap2/displays/panel-picodlp.c
index 0d7a8ff50f16..9df87640ddd2 100644
--- a/drivers/video/omap2/displays/panel-picodlp.c
+++ b/drivers/video/omap2/displays/panel-picodlp.c
@@ -379,6 +379,7 @@ static int picodlp_panel_power_on(struct omap_dss_device *dssdev)
379 msleep(1000); 379 msleep(1000);
380 380
381 omapdss_dpi_set_timings(dssdev, &dssdev->panel.timings); 381 omapdss_dpi_set_timings(dssdev, &dssdev->panel.timings);
382 omapdss_dpi_set_data_lines(dssdev, dssdev->phy.dpi.data_lines);
382 383
383 r = omapdss_dpi_display_enable(dssdev); 384 r = omapdss_dpi_display_enable(dssdev);
384 if (r) { 385 if (r) {
diff --git a/drivers/video/omap2/displays/panel-sharp-ls037v7dw01.c b/drivers/video/omap2/displays/panel-sharp-ls037v7dw01.c
index 1486a81fc8b6..1ec3b277ff15 100644
--- a/drivers/video/omap2/displays/panel-sharp-ls037v7dw01.c
+++ b/drivers/video/omap2/displays/panel-sharp-ls037v7dw01.c
@@ -143,6 +143,7 @@ static int sharp_ls_power_on(struct omap_dss_device *dssdev)
143 return 0; 143 return 0;
144 144
145 omapdss_dpi_set_timings(dssdev, &dssdev->panel.timings); 145 omapdss_dpi_set_timings(dssdev, &dssdev->panel.timings);
146 omapdss_dpi_set_data_lines(dssdev, dssdev->phy.dpi.data_lines);
146 147
147 r = omapdss_dpi_display_enable(dssdev); 148 r = omapdss_dpi_display_enable(dssdev);
148 if (r) 149 if (r)
diff --git a/drivers/video/omap2/displays/panel-tfp410.c b/drivers/video/omap2/displays/panel-tfp410.c
index 9397236084b1..4be9a59664d5 100644
--- a/drivers/video/omap2/displays/panel-tfp410.c
+++ b/drivers/video/omap2/displays/panel-tfp410.c
@@ -66,6 +66,7 @@ static int tfp410_power_on(struct omap_dss_device *dssdev)
66 return 0; 66 return 0;
67 67
68 omapdss_dpi_set_timings(dssdev, &dssdev->panel.timings); 68 omapdss_dpi_set_timings(dssdev, &dssdev->panel.timings);
69 omapdss_dpi_set_data_lines(dssdev, dssdev->phy.dpi.data_lines);
69 70
70 r = omapdss_dpi_display_enable(dssdev); 71 r = omapdss_dpi_display_enable(dssdev);
71 if (r) 72 if (r)
diff --git a/drivers/video/omap2/displays/panel-tpo-td043mtea1.c b/drivers/video/omap2/displays/panel-tpo-td043mtea1.c
index 3f47f5f594b4..b5e6dbc59f0a 100644
--- a/drivers/video/omap2/displays/panel-tpo-td043mtea1.c
+++ b/drivers/video/omap2/displays/panel-tpo-td043mtea1.c
@@ -338,6 +338,7 @@ static int tpo_td043_enable_dss(struct omap_dss_device *dssdev)
338 return 0; 338 return 0;
339 339
340 omapdss_dpi_set_timings(dssdev, &dssdev->panel.timings); 340 omapdss_dpi_set_timings(dssdev, &dssdev->panel.timings);
341 omapdss_dpi_set_data_lines(dssdev, dssdev->phy.dpi.data_lines);
341 342
342 r = omapdss_dpi_display_enable(dssdev); 343 r = omapdss_dpi_display_enable(dssdev);
343 if (r) 344 if (r)
diff --git a/drivers/video/omap2/dss/dpi.c b/drivers/video/omap2/dss/dpi.c
index d561a9198a8d..f260343e2451 100644
--- a/drivers/video/omap2/dss/dpi.c
+++ b/drivers/video/omap2/dss/dpi.c
@@ -43,6 +43,7 @@ static struct {
43 43
44 struct omap_video_timings timings; 44 struct omap_video_timings timings;
45 struct dss_lcd_mgr_config mgr_config; 45 struct dss_lcd_mgr_config mgr_config;
46 int data_lines;
46} dpi; 47} dpi;
47 48
48static struct platform_device *dpi_get_dsidev(enum omap_dss_clk_source clk) 49static struct platform_device *dpi_get_dsidev(enum omap_dss_clk_source clk)
@@ -161,7 +162,7 @@ static void dpi_config_lcd_manager(struct omap_dss_device *dssdev)
161 dpi.mgr_config.stallmode = false; 162 dpi.mgr_config.stallmode = false;
162 dpi.mgr_config.fifohandcheck = false; 163 dpi.mgr_config.fifohandcheck = false;
163 164
164 dpi.mgr_config.video_port_width = dssdev->phy.dpi.data_lines; 165 dpi.mgr_config.video_port_width = dpi.data_lines;
165 166
166 dpi.mgr_config.lcden_sig_polarity = 0; 167 dpi.mgr_config.lcden_sig_polarity = 0;
167 168
@@ -347,6 +348,16 @@ int dpi_check_timings(struct omap_dss_device *dssdev,
347} 348}
348EXPORT_SYMBOL(dpi_check_timings); 349EXPORT_SYMBOL(dpi_check_timings);
349 350
351void omapdss_dpi_set_data_lines(struct omap_dss_device *dssdev, int data_lines)
352{
353 mutex_lock(&dpi.lock);
354
355 dpi.data_lines = data_lines;
356
357 mutex_unlock(&dpi.lock);
358}
359EXPORT_SYMBOL(omapdss_dpi_set_data_lines);
360
350static int __init dpi_init_display(struct omap_dss_device *dssdev) 361static int __init dpi_init_display(struct omap_dss_device *dssdev)
351{ 362{
352 DSSDBG("init_display\n"); 363 DSSDBG("init_display\n");
diff --git a/include/video/omapdss.h b/include/video/omapdss.h
index 2e8bb087feff..38633b29195d 100644
--- a/include/video/omapdss.h
+++ b/include/video/omapdss.h
@@ -743,6 +743,7 @@ void omapdss_dpi_set_timings(struct omap_dss_device *dssdev,
743 struct omap_video_timings *timings); 743 struct omap_video_timings *timings);
744int dpi_check_timings(struct omap_dss_device *dssdev, 744int dpi_check_timings(struct omap_dss_device *dssdev,
745 struct omap_video_timings *timings); 745 struct omap_video_timings *timings);
746void omapdss_dpi_set_data_lines(struct omap_dss_device *dssdev, int data_lines);
746 747
747int omapdss_sdi_display_enable(struct omap_dss_device *dssdev); 748int omapdss_sdi_display_enable(struct omap_dss_device *dssdev);
748void omapdss_sdi_display_disable(struct omap_dss_device *dssdev); 749void omapdss_sdi_display_disable(struct omap_dss_device *dssdev);