diff options
author | Tomi Valkeinen <tomi.valkeinen@ti.com> | 2011-11-21 06:34:48 -0500 |
---|---|---|
committer | Tomi Valkeinen <tomi.valkeinen@ti.com> | 2011-12-02 01:54:54 -0500 |
commit | 2a4ee7ee685f3bf996461ed0d148857ce85a00e2 (patch) | |
tree | a1f3308e9459d143fa9124a5d7267003d39bb88d /drivers/video | |
parent | 39518356ccd6e439abae24e1a24d84dcd12ff207 (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.c | 12 | ||||
-rw-r--r-- | drivers/video/omap2/dss/dss.h | 2 |
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 | ||
970 | void dss_mgr_enable(struct omap_overlay_manager *mgr) | 970 | int 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 | ||
1007 | out: | 1006 | out: |
1008 | mutex_unlock(&apply_lock); | 1007 | mutex_unlock(&apply_lock); |
1008 | |||
1009 | return 0; | ||
1010 | |||
1011 | err: | ||
1012 | spin_unlock_irqrestore(&data_lock, flags); | ||
1013 | mutex_unlock(&apply_lock); | ||
1014 | return r; | ||
1009 | } | 1015 | } |
1010 | 1016 | ||
1011 | void dss_mgr_disable(struct omap_overlay_manager *mgr) | 1017 | void 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); | |||
170 | void dss_mgr_start_update(struct omap_overlay_manager *mgr); | 170 | void dss_mgr_start_update(struct omap_overlay_manager *mgr); |
171 | int omap_dss_mgr_apply(struct omap_overlay_manager *mgr); | 171 | int omap_dss_mgr_apply(struct omap_overlay_manager *mgr); |
172 | 172 | ||
173 | void dss_mgr_enable(struct omap_overlay_manager *mgr); | 173 | int dss_mgr_enable(struct omap_overlay_manager *mgr); |
174 | void dss_mgr_disable(struct omap_overlay_manager *mgr); | 174 | void dss_mgr_disable(struct omap_overlay_manager *mgr); |
175 | int dss_mgr_set_info(struct omap_overlay_manager *mgr, | 175 | int dss_mgr_set_info(struct omap_overlay_manager *mgr, |
176 | struct omap_overlay_manager_info *info); | 176 | struct omap_overlay_manager_info *info); |