aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/video
diff options
context:
space:
mode:
authorTomi Valkeinen <tomi.valkeinen@ti.com>2011-11-21 06:34:48 -0500
committerTomi Valkeinen <tomi.valkeinen@ti.com>2011-12-02 01:54:54 -0500
commit2a4ee7ee685f3bf996461ed0d148857ce85a00e2 (patch)
treea1f3308e9459d143fa9124a5d7267003d39bb88d /drivers/video
parent39518356ccd6e439abae24e1a24d84dcd12ff207 (diff)
OMAPDSS: APPLY: add return value to dss_mgr_enable()
Now that dss_mgr_enable() can fail due to checks, make it return the error value. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Diffstat (limited to 'drivers/video')
-rw-r--r--drivers/video/omap2/dss/apply.c12
-rw-r--r--drivers/video/omap2/dss/dss.h2
2 files changed, 10 insertions, 4 deletions
diff --git a/drivers/video/omap2/dss/apply.c b/drivers/video/omap2/dss/apply.c
index 6eb48586501c..614592c7a75c 100644
--- a/drivers/video/omap2/dss/apply.c
+++ b/drivers/video/omap2/dss/apply.c
@@ -967,7 +967,7 @@ static void dss_mgr_setup_fifos(struct omap_overlay_manager *mgr)
967 } 967 }
968} 968}
969 969
970void dss_mgr_enable(struct omap_overlay_manager *mgr) 970int dss_mgr_enable(struct omap_overlay_manager *mgr)
971{ 971{
972 struct mgr_priv_data *mp = get_mgr_priv(mgr); 972 struct mgr_priv_data *mp = get_mgr_priv(mgr);
973 unsigned long flags; 973 unsigned long flags;
@@ -986,8 +986,7 @@ void dss_mgr_enable(struct omap_overlay_manager *mgr)
986 if (r) { 986 if (r) {
987 DSSERR("failed to enable manager %d: check_settings failed\n", 987 DSSERR("failed to enable manager %d: check_settings failed\n",
988 mgr->id); 988 mgr->id);
989 spin_unlock_irqrestore(&data_lock, flags); 989 goto err;
990 goto out;
991 } 990 }
992 991
993 mp->enabled = true; 992 mp->enabled = true;
@@ -1006,6 +1005,13 @@ void dss_mgr_enable(struct omap_overlay_manager *mgr)
1006 1005
1007out: 1006out:
1008 mutex_unlock(&apply_lock); 1007 mutex_unlock(&apply_lock);
1008
1009 return 0;
1010
1011err:
1012 spin_unlock_irqrestore(&data_lock, flags);
1013 mutex_unlock(&apply_lock);
1014 return r;
1009} 1015}
1010 1016
1011void dss_mgr_disable(struct omap_overlay_manager *mgr) 1017void dss_mgr_disable(struct omap_overlay_manager *mgr)
diff --git a/drivers/video/omap2/dss/dss.h b/drivers/video/omap2/dss/dss.h
index 6fce3108c060..45b724ae04fe 100644
--- a/drivers/video/omap2/dss/dss.h
+++ b/drivers/video/omap2/dss/dss.h
@@ -170,7 +170,7 @@ int dss_mgr_wait_for_go_ovl(struct omap_overlay *ovl);
170void dss_mgr_start_update(struct omap_overlay_manager *mgr); 170void dss_mgr_start_update(struct omap_overlay_manager *mgr);
171int omap_dss_mgr_apply(struct omap_overlay_manager *mgr); 171int omap_dss_mgr_apply(struct omap_overlay_manager *mgr);
172 172
173void dss_mgr_enable(struct omap_overlay_manager *mgr); 173int dss_mgr_enable(struct omap_overlay_manager *mgr);
174void dss_mgr_disable(struct omap_overlay_manager *mgr); 174void dss_mgr_disable(struct omap_overlay_manager *mgr);
175int dss_mgr_set_info(struct omap_overlay_manager *mgr, 175int dss_mgr_set_info(struct omap_overlay_manager *mgr,
176 struct omap_overlay_manager_info *info); 176 struct omap_overlay_manager_info *info);