From e1bcb0e4eb16c2d6150ac3f51d5a61cee46ee2cd Mon Sep 17 00:00:00 2001 From: Tao Huang Date: Wed, 16 May 2018 16:39:22 +0800 Subject: [PATCH] PM / devfreq: rockchip_dmc: no lock dmcfreq->lock on rockchip_dmcfreq_target It is not necessary to lock/unlock dmcfreq->lock on rockchip_dmcfreq_target. update_devfreq call target callback with devfreq->lock. So use rockchip_dmcfreq lock to serializes access to video_info_list only. Change-Id: I9abd5fa1dfc37740d3fac9983775028dc14b64b5 Signed-off-by: Tao Huang --- drivers/devfreq/rockchip_dmc.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/drivers/devfreq/rockchip_dmc.c b/drivers/devfreq/rockchip_dmc.c index 659d112e8598..cfef9aabc97e 100644 --- a/drivers/devfreq/rockchip_dmc.c +++ b/drivers/devfreq/rockchip_dmc.c @@ -760,7 +760,7 @@ struct rockchip_dmcfreq { struct devfreq_simple_ondemand_data ondemand_data; struct clk *dmc_clk; struct devfreq_event_dev *edev; - struct mutex lock; /* scaling frequency lock */ + struct mutex lock; /* serializes access to video_info_list */ struct dram_timing *timing; struct regulator *vdd_center; struct notifier_block system_status_nb; @@ -966,8 +966,6 @@ static int rockchip_dmcfreq_target(struct device *dev, unsigned long *freq, dmcfreq->volt = regulator_get_voltage(dmcfreq->vdd_center); } - mutex_lock(&dmcfreq->lock); - /* * We need to prevent cpu hotplug from happening while a dmc freq rate * change is happening. @@ -1064,7 +1062,6 @@ out: cpufreq_cpu_put(policy); cpufreq: put_online_cpus(); - mutex_unlock(&dmcfreq->lock); return err; }