summaryrefslogtreecommitdiffstats
path: root/drivers/video/omap2/dss/apply.c
diff options
context:
space:
mode:
authorTomi Valkeinen <tomi.valkeinen@ti.com>2011-11-16 13:58:07 +0200
committerTomi Valkeinen <tomi.valkeinen@ti.com>2011-12-02 08:54:46 +0200
commit388c4c6cbb335e69fe23c8d18bd4b0e8dd66901b (patch)
tree544f9d9431995b6cf7ffe89ff10d1a8604130524 /drivers/video/omap2/dss/apply.c
parent7609893c637b422eec88b57d204f02d8798cfc65 (diff)
OMAPDSS: APPLY: move mgr->info to apply.c
struct omap_overlay_manager contains info and info_dirty fields, both of which should be internal to apply.c. This patch moves those fields into mgr_priv data, and names them user_info and user_info_dirty. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Diffstat (limited to 'drivers/video/omap2/dss/apply.c')
-rw-r--r--drivers/video/omap2/dss/apply.c20
1 files changed, 13 insertions, 7 deletions
diff --git a/drivers/video/omap2/dss/apply.c b/drivers/video/omap2/dss/apply.c
index 8b157b03d4b..62319b8328d 100644
--- a/drivers/video/omap2/dss/apply.c
+++ b/drivers/video/omap2/dss/apply.c
@@ -78,6 +78,10 @@ struct ovl_priv_data {
};
struct mgr_priv_data {
+
+ bool user_info_dirty;
+ struct omap_overlay_manager_info user_info;
+
/* If true, cache changed, but not written to shadow registers. Set
* in apply(), cleared when registers written. */
bool dirty;
@@ -592,15 +596,15 @@ static void omap_dss_mgr_apply_mgr(struct omap_overlay_manager *mgr)
if (mgr->device_changed) {
mgr->device_changed = false;
- mgr->info_dirty = true;
+ mp->user_info_dirty = true;
}
- if (!mgr->info_dirty)
+ if (!mp->user_info_dirty)
return;
- mgr->info_dirty = false;
+ mp->user_info_dirty = false;
mp->dirty = true;
- mp->info = mgr->info;
+ mp->info = mp->user_info;
}
static void omap_dss_mgr_apply_ovl_fifos(struct omap_overlay *ovl)
@@ -720,12 +724,13 @@ void dss_mgr_disable(struct omap_overlay_manager *mgr)
int dss_mgr_set_info(struct omap_overlay_manager *mgr,
struct omap_overlay_manager_info *info)
{
+ struct mgr_priv_data *mp = get_mgr_priv(mgr);
unsigned long flags;
spin_lock_irqsave(&data_lock, flags);
- mgr->info = *info;
- mgr->info_dirty = true;
+ mp->user_info = *info;
+ mp->user_info_dirty = true;
spin_unlock_irqrestore(&data_lock, flags);
@@ -735,11 +740,12 @@ int dss_mgr_set_info(struct omap_overlay_manager *mgr,
void dss_mgr_get_info(struct omap_overlay_manager *mgr,
struct omap_overlay_manager_info *info)
{
+ struct mgr_priv_data *mp = get_mgr_priv(mgr);
unsigned long flags;
spin_lock_irqsave(&data_lock, flags);
- *info = mgr->info;
+ *info = mp->user_info;
spin_unlock_irqrestore(&data_lock, flags);
}