OMAPDSS: DPI: fix dpi_get_dsidev() for omap5
authorTomi Valkeinen <tomi.valkeinen@ti.com>
Mon, 11 Mar 2013 11:57:38 +0000 (13:57 +0200)
committerTomi Valkeinen <tomi.valkeinen@ti.com>
Wed, 3 Apr 2013 12:19:02 +0000 (15:19 +0300)
On OMAP5 the DISPC channels and DSI PLLs are not connected the same way.
LCD2 on OMAP5 cannot use any DSI PLL as a source clock, but LCD3 can use
DSI2's PLL.

This patch fixes dpi_get_dsidev() by adding separate case for OMAP5 to
handle the difference.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Reviewed-by: Archit Taneja <archit@ti.com>
drivers/video/omap2/dss/dpi.c

index ab6d8b0e94c78fa1a668a617f944d5acf6493b06..c8c7776c8cfab9fd4ae3a8ae9d6730d18074c09f 100644 (file)
@@ -63,15 +63,29 @@ static struct platform_device *dpi_get_dsidev(enum omap_channel channel)
        case OMAPDSS_VER_OMAP3630:
        case OMAPDSS_VER_AM35xx:
                return NULL;
-       default:
-               break;
-       }
 
-       switch (channel) {
-       case OMAP_DSS_CHANNEL_LCD:
-               return dsi_get_dsidev_from_id(0);
-       case OMAP_DSS_CHANNEL_LCD2:
-               return dsi_get_dsidev_from_id(1);
+       case OMAPDSS_VER_OMAP4430_ES1:
+       case OMAPDSS_VER_OMAP4430_ES2:
+       case OMAPDSS_VER_OMAP4:
+               switch (channel) {
+               case OMAP_DSS_CHANNEL_LCD:
+                       return dsi_get_dsidev_from_id(0);
+               case OMAP_DSS_CHANNEL_LCD2:
+                       return dsi_get_dsidev_from_id(1);
+               default:
+                       return NULL;
+               }
+
+       case OMAPDSS_VER_OMAP5:
+               switch (channel) {
+               case OMAP_DSS_CHANNEL_LCD:
+                       return dsi_get_dsidev_from_id(0);
+               case OMAP_DSS_CHANNEL_LCD3:
+                       return dsi_get_dsidev_from_id(1);
+               default:
+                       return NULL;
+               }
+
        default:
                return NULL;
        }