[PATCH] FIX:cache:exynos: Execute the cache reconfiguration unconditionally for Exynos4

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The commit 2bf73dd61a84cdf27e49f48e08739af6ba70ace1 has made the cache
configuration depending on definition of CONFIG_S5P_SLEEP Kconfig flag.
It is enabled on various S5PV210 incarnations and not available at Exynos4
family of SoCs.

The problem emerges when one wants to disable/enable core via hotplug - e.g:
echo 0 > /sys/devices/system/cpu/cpu1/online.
When CONFIG_CPU_IDLE is enabled (it is not enabled at default exynos_defconfig).

On Exynos4 based targets (Exynos4412 and Exynos4210, namely trats2 and
trats) board locks up and consumes considerable power.

This patch does nothing more than restoration of the state before the
offending commit.

Tested on top of next-20140514 at Trats board.

Signed-off-by: Lukasz Majewski <l.majewski@xxxxxxxxxxx>
---
 arch/arm/mach-exynos/exynos.c |    7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/arch/arm/mach-exynos/exynos.c b/arch/arm/mach-exynos/exynos.c
index 1b97b93..5c8b334 100644
--- a/arch/arm/mach-exynos/exynos.c
+++ b/arch/arm/mach-exynos/exynos.c
@@ -254,10 +254,9 @@ static int __init exynos4_l2x0_cache_init(void)
 	if (ret)
 		return ret;
 
-	if (IS_ENABLED(CONFIG_S5P_SLEEP)) {
-		l2x0_regs_phys = virt_to_phys(&l2x0_saved_regs);
-		clean_dcache_area(&l2x0_regs_phys, sizeof(unsigned long));
-	}
+	l2x0_regs_phys = virt_to_phys(&l2x0_saved_regs);
+	clean_dcache_area(&l2x0_regs_phys, sizeof(unsigned long));
+
 	return 0;
 }
 early_initcall(exynos4_l2x0_cache_init);
-- 
1.7.10.4

--
To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux SoC Development]     [Linux Rockchip Development]     [Linux USB Development]     [Video for Linux]     [Linux Audio Users]     [Linux SCSI]     [Yosemite News]

  Powered by Linux