diff options
author | Andy Doan <andy.doan@linaro.org> | 2011-07-24 20:59:11 +0100 |
---|---|---|
committer | Andy Green <andy.green@linaro.org> | 2011-08-25 07:37:35 +0100 |
commit | a414288455705638948c53528d5d6ebbda716d44 (patch) | |
tree | 9854d05e2e3d30b3c4a5cc3eae05655a96d760c3 /drivers/video | |
parent | 47e62b51d58097787db33a2b11b3e2e3257adf72 (diff) |
OMAP: DSS: ensure default panel is enabled
In the event a panel is not probable (no i2c_bus_num), we should
make sure that the default panel passed to the kernel marked enabled
Adapted to be more paranoid and work in Panda case.
Signed-off-by: Andy Doan <andy.doan@linaro.org>
Signed-off-by: Andy Green <andy.green@linaro.org>
Diffstat (limited to 'drivers/video')
-rw-r--r-- | drivers/video/omap2/displays/panel-generic-dpi.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/drivers/video/omap2/displays/panel-generic-dpi.c b/drivers/video/omap2/displays/panel-generic-dpi.c index 1a6ffd11cb5..273df3f7041 100644 --- a/drivers/video/omap2/displays/panel-generic-dpi.c +++ b/drivers/video/omap2/displays/panel-generic-dpi.c @@ -308,6 +308,7 @@ static int generic_dpi_panel_probe(struct omap_dss_device *dssdev) struct panel_config *panel_config = NULL; struct panel_drv_data *drv_data = NULL; int i; + const char *default_disp_name; dev_dbg(&dssdev->dev, "probe\n"); @@ -338,6 +339,16 @@ static int generic_dpi_panel_probe(struct omap_dss_device *dssdev) dev_set_drvdata(&dssdev->dev, drv_data); + default_disp_name = omap_dss_get_def_disp(); + + if (!panel_data->i2c_bus_num && dssdev->name && default_disp_name && + strcmp(dssdev->name, default_disp_name) == 0) { + dev_dbg(&dssdev->dev, "manually enabling %s", + dssdev->name); + dssdev->state = OMAP_DSS_DISPLAY_SUSPENDED; + dssdev->activate_after_resume = true; + } + return 0; } |