diff options
author | Jay Tu <jay.tu@freescale.com> | 2014-08-25 20:35:43 +0800 |
---|---|---|
committer | Jay Tu <jay.tu@freescale.com> | 2014-08-26 11:22:37 +0800 |
commit | b560fd6518b12db412ce39847c30af29d452f508 (patch) | |
tree | a24b89d61d33652f2d6cbf84c6d6c2bf93c51e9d | |
parent | ebe6e50e459356906caff736874b4011b097001d (diff) |
ENGR00327608 Revert "ENGR00278452 PU: fix system hang if run Audio loop test"
This reverts commit d3d6949649c522ae692287de2b12c744676076aa.
We didn't find the way to reproduce the issue and the changes in gpu kernel
is not in gpu repository. Revert this firstly and checked if we can find the
way to see the issue cleary.
Signed-off-by: Jay Tu <jay.tu@freescale.com>
-rwxr-xr-x | arch/arm/plat-mxc/cpufreq.c | 18 | ||||
-rw-r--r-- | drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_os.c | 2 | ||||
-rw-r--r-- | drivers/mxc/vpu/mxc_vpu.c | 11 |
3 files changed, 3 insertions, 28 deletions
diff --git a/arch/arm/plat-mxc/cpufreq.c b/arch/arm/plat-mxc/cpufreq.c index 2d26971a01ed..b11d655a734b 100755 --- a/arch/arm/plat-mxc/cpufreq.c +++ b/arch/arm/plat-mxc/cpufreq.c @@ -1,5 +1,5 @@ /* - * Copyright (C) 2010-2013 Freescale Semiconductor, Inc. All Rights Reserved. + * Copyright (C) 2010-2014 Freescale Semiconductor, Inc. All Rights Reserved. */ /* @@ -47,7 +47,7 @@ static u32 pre_suspend_rate; int cpufreq_suspended; #endif static bool cpufreq_suspend; -struct mutex set_cpufreq_lock; +static struct mutex set_cpufreq_lock; extern struct regulator *cpu_regulator; extern struct regulator *soc_regulator; @@ -108,13 +108,6 @@ int set_cpu_freq(int freq) "COULD NOT SET PU VOLTAGE!!!!\n"); goto err2; } - /* - * Force sync setting PU since regulator mabye maintain - * the old volatage setting before disable PU, then will - * miss this time setting if the two setting is same. - * So do force sync again here. - */ - regulator_sync_voltage(pu_regulator); } ret = regulator_set_voltage(cpu_regulator, gp_volt, gp_volt); @@ -155,13 +148,6 @@ int set_cpu_freq(int freq) "COULD NOT SET PU VOLTAGE!!!!\n"); goto err7; } - /* - * Force sync setting PU since regulator mabye maintain - * the old volatage setting before disable PU, then will - * miss this time setting if the two setting is same. - * So do force sync again here. - */ - regulator_sync_voltage(pu_regulator); } /* Check if the bus freq can be decreased.*/ bus_freq_update(cpu_clk, false); diff --git a/drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_os.c b/drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_os.c index 35d479f7290c..4c04efa308e3 100644 --- a/drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_os.c +++ b/drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_os.c @@ -6942,7 +6942,6 @@ gckOS_GetThreadID( ** ** Nothing. */ -extern struct mutex set_cpufreq_lock; gceSTATUS gckOS_SetGPUPower( IN gckOS Os, @@ -7126,7 +7125,6 @@ gckOS_SetGPUPower( mutex_lock(&set_cpufreq_lock); if(!IS_ERR(Os->device->gpu_regulator)) regulator_disable(Os->device->gpu_regulator); - mutex_unlock(&set_cpufreq_lock); #else imx_gpc_power_up_pu(false); #endif diff --git a/drivers/mxc/vpu/mxc_vpu.c b/drivers/mxc/vpu/mxc_vpu.c index 03f2be8c8b67..09b8819aa450 100644 --- a/drivers/mxc/vpu/mxc_vpu.c +++ b/drivers/mxc/vpu/mxc_vpu.c @@ -1,5 +1,5 @@ /* - * Copyright 2006-2013 Freescale Semiconductor, Inc. All Rights Reserved. + * Copyright 2006-2014 Freescale Semiconductor, Inc. All Rights Reserved. */ /* @@ -113,7 +113,6 @@ static int vpu_jpu_irq; static unsigned int regBk[64]; static struct regulator *vpu_regulator; static unsigned int pc_before_suspend; -extern struct mutex set_cpufreq_lock; #define READ_REG(x) __raw_readl(vpu_base + x) #define WRITE_REG(val, x) __raw_writel(val, vpu_base + x) @@ -253,10 +252,8 @@ static int vpu_open(struct inode *inode, struct file *filp) mutex_lock(&vpu_data.lock); if (open_count++ == 0) { - mutex_lock(&set_cpufreq_lock); if (!IS_ERR(vpu_regulator)) regulator_enable(vpu_regulator); - mutex_unlock(&set_cpufreq_lock); #ifdef CONFIG_SOC_IMX6Q clk_enable(vpu_clk); @@ -637,10 +634,8 @@ static int vpu_release(struct inode *inode, struct file *filp) for (i = 0; i < vpu_clk_usercount; i++) clk_disable(vpu_clk); - mutex_lock(&set_cpufreq_lock); if (!IS_ERR(vpu_regulator)) regulator_disable(vpu_regulator); - mutex_unlock(&set_cpufreq_lock); } mutex_unlock(&vpu_data.lock); @@ -929,10 +924,8 @@ static int vpu_suspend(struct platform_device *pdev, pm_message_t state) /* If VPU is working before suspend, disable * regulator to make usecount right. */ - mutex_lock(&set_cpufreq_lock); if (!IS_ERR(vpu_regulator)) regulator_disable(vpu_regulator); - mutex_unlock(&set_cpufreq_lock); } mutex_unlock(&vpu_data.lock); @@ -959,10 +952,8 @@ static int vpu_resume(struct platform_device *pdev) /* If VPU is working before suspend, enable * regulator to make usecount right. */ - mutex_lock(&set_cpufreq_lock); if (!IS_ERR(vpu_regulator)) regulator_enable(vpu_regulator); - mutex_unlock(&set_cpufreq_lock); if (vpu_plat->pg) vpu_plat->pg(0); |