summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--drivers/video/omap2/displays/panel-generic-dpi.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/video/omap2/displays/panel-generic-dpi.c b/drivers/video/omap2/displays/panel-generic-dpi.c
index 8529980bcc5..1a6ffd11cb5 100644
--- a/drivers/video/omap2/displays/panel-generic-dpi.c
+++ b/drivers/video/omap2/displays/panel-generic-dpi.c
@@ -243,6 +243,9 @@ struct panel_drv_data {
struct panel_config *panel_config;
};
+static bool generic_dpi_panel_is_detected(struct omap_dss_device *dssdev,
+ bool force);
+
static inline struct panel_generic_dpi_data
*get_panel_data(const struct omap_dss_device *dssdev)
{
@@ -353,6 +356,13 @@ static int generic_dpi_panel_enable(struct omap_dss_device *dssdev)
{
int r = 0;
+ /* Avoid enabling the panel if there is none around */
+ if (!generic_dpi_panel_is_detected(dssdev, false)) {
+ printk(KERN_ERR "Not enabling generic panel as no "
+ "connector is detected\n");
+ return 1;
+ }
+
r = generic_dpi_panel_power_on(dssdev);
if (r)
return r;