OMAP: DSS2: Add Kconfig option for DPI display type
authorRoger Quadros <roger.quadros@nokia.com>
Wed, 17 Mar 2010 12:35:19 +0000 (13:35 +0100)
committerTomi Valkeinen <tomi.valkeinen@nokia.com>
Tue, 18 May 2010 11:14:29 +0000 (14:14 +0300)
This allows us to disable DPI on systems that do not have it

Signed-off-by: Roger Quadros <roger.quadros@nokia.com>
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
drivers/video/omap2/dss/Kconfig
drivers/video/omap2/dss/Makefile
drivers/video/omap2/dss/core.c
drivers/video/omap2/dss/display.c

index 87afb81..43b6440 100644 (file)
@@ -36,6 +36,12 @@ config OMAP2_DSS_COLLECT_IRQ_STATS
          <debugfs>/omapdss/dispc_irq for DISPC interrupts, and
          <debugfs>/omapdss/dsi_irq for DSI interrupts.
 
+config OMAP2_DSS_DPI
+       bool "DPI support"
+       default y
+       help
+         DPI Interface. This is the Parallel Display Interface.
+
 config OMAP2_DSS_RFBI
        bool "RFBI support"
         default n
index 980c72c..d71b5d9 100644 (file)
@@ -1,5 +1,6 @@
 obj-$(CONFIG_OMAP2_DSS) += omapdss.o
-omapdss-y := core.o dss.o dispc.o dpi.o display.o manager.o overlay.o
+omapdss-y := core.o dss.o dispc.o display.o manager.o overlay.o
+omapdss-$(CONFIG_OMAP2_DSS_DPI) += dpi.o
 omapdss-$(CONFIG_OMAP2_DSS_RFBI) += rfbi.o
 omapdss-$(CONFIG_OMAP2_DSS_VENC) += venc.o
 omapdss-$(CONFIG_OMAP2_DSS_SDI) += sdi.o
index 7ebe50b..6d54467 100644 (file)
@@ -526,11 +526,13 @@ static int omap_dss_probe(struct platform_device *pdev)
        }
 #endif
 
+#ifdef CONFIG_OMAP2_DSS_DPI
        r = dpi_init(pdev);
        if (r) {
                DSSERR("Failed to initialize dpi\n");
                goto fail0;
        }
+#endif
 
        r = dispc_init();
        if (r) {
@@ -601,7 +603,9 @@ static int omap_dss_remove(struct platform_device *pdev)
        venc_exit();
 #endif
        dispc_exit();
+#ifdef CONFIG_OMAP2_DSS_DPI
        dpi_exit();
+#endif
 #ifdef CONFIG_OMAP2_DSS_RFBI
        rfbi_exit();
 #endif
index 6a74ea1..7138963 100644 (file)
@@ -392,7 +392,9 @@ void dss_init_device(struct platform_device *pdev,
        int r;
 
        switch (dssdev->type) {
+#ifdef CONFIG_OMAP2_DSS_DPI
        case OMAP_DISPLAY_TYPE_DPI:
+#endif
 #ifdef CONFIG_OMAP2_DSS_RFBI
        case OMAP_DISPLAY_TYPE_DBI:
 #endif
@@ -413,9 +415,11 @@ void dss_init_device(struct platform_device *pdev,
        }
 
        switch (dssdev->type) {
+#ifdef CONFIG_OMAP2_DSS_DPI
        case OMAP_DISPLAY_TYPE_DPI:
                r = dpi_init_display(dssdev);
                break;
+#endif
 #ifdef CONFIG_OMAP2_DSS_RFBI
        case OMAP_DISPLAY_TYPE_DBI:
                r = rfbi_init_display(dssdev);