]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
OMAPDSS: clean up dss_mgr_set_lcd_config
authorTomi Valkeinen <tomi.valkeinen@ti.com>
Thu, 9 Aug 2012 15:07:45 +0000 (18:07 +0300)
committerTomi Valkeinen <tomi.valkeinen@ti.com>
Fri, 7 Sep 2012 17:02:11 +0000 (20:02 +0300)
dss_mgr_set_lcd_config() can only be called when the output is not
active. This means that most of the code in the function is extra, as
there's no need to write the values to registers, etc, because that will
be handled when the output will be enabled.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
drivers/video/omap2/dss/apply.c

index 52a5940a3773c2f73e5585abda2c09cf01be7875..53629dd0291b42f3bc8594e5f3ad38f96208e900 100644 (file)
@@ -1346,7 +1346,7 @@ void dss_mgr_set_lcd_config(struct omap_overlay_manager *mgr,
        unsigned long flags;
        struct mgr_priv_data *mp = get_mgr_priv(mgr);
 
-       mutex_lock(&apply_lock);
+       spin_lock_irqsave(&data_lock, flags);
 
        if (mp->enabled) {
                DSSERR("cannot apply lcd config for %s: manager needs to be disabled\n",
@@ -1354,19 +1354,9 @@ void dss_mgr_set_lcd_config(struct omap_overlay_manager *mgr,
                goto out;
        }
 
-       spin_lock_irqsave(&data_lock, flags);
-
        dss_apply_mgr_lcd_config(mgr, config);
-
-       dss_write_regs();
-       dss_set_go_bits();
-
-       spin_unlock_irqrestore(&data_lock, flags);
-
-       wait_pending_extra_info_updates();
-
 out:
-       mutex_unlock(&apply_lock);
+       spin_unlock_irqrestore(&data_lock, flags);
 }
 
 int dss_ovl_set_info(struct omap_overlay *ovl,