From: Huang, Tao Date: Tue, 6 Jan 2015 04:23:57 +0000 (+0800) Subject: ARM: rockchip: enable ARM_ERRATA_821420 for RK3288 X-Git-Tag: firefly_0821_release~4341 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=6ed2a41c0ba619c85fa41c91a7bfd61e1c455416;p=firefly-linux-kernel-4.4.55.git ARM: rockchip: enable ARM_ERRATA_821420 for RK3288 Signed-off-by: Huang, Tao --- diff --git a/arch/arm/mach-rockchip/Kconfig b/arch/arm/mach-rockchip/Kconfig index 5ecf911bdfd8..24b25bc5cf95 100755 --- a/arch/arm/mach-rockchip/Kconfig +++ b/arch/arm/mach-rockchip/Kconfig @@ -21,6 +21,7 @@ config ARCH_ROCKCHIP select PL330_DMA select FIQ_GLUE select ARM_ERRATA_818325 + select ARM_ERRATA_821420 if ARCH_ROCKCHIP diff --git a/arch/arm/mach-rockchip/pm-rk3288.c b/arch/arm/mach-rockchip/pm-rk3288.c index d2f98c5857f8..fcb6a7aa0c7b 100755 --- a/arch/arm/mach-rockchip/pm-rk3288.c +++ b/arch/arm/mach-rockchip/pm-rk3288.c @@ -1290,6 +1290,14 @@ static void rkpm_save_setting(u32 ctrbits) } static void rkpm_save_setting_resume(void) { +#ifdef CONFIG_ARM_ERRATA_821420 + u32 v; + + asm volatile("mrc p15, 0, %0, c15, c0, 2" : "=r" (v)); + v |= 1 << 1; + asm volatile("mcr p15, 0, %0, c15, c0, 2" : : "r" (v)); + isb(); +#endif #if 0 rkpm_ddr_printascii("l2&arm_errata--");