ARM: 8103/1: save/restore Cortex-A9 CP15 registers on suspend/resume
authorShawn Guo <shawn.guo@linaro.org>
Wed, 16 Jul 2014 06:40:53 +0000 (07:40 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Fri, 18 Jul 2014 11:29:37 +0000 (12:29 +0100)
commitddd0c53018222df6bd9b2f61c881887b56b75d88
tree221228ca1285abeccee00b066000fa0942e056e7
parentbf67fd3142dc605ded9b5e063e35b47c2bb21cb1
ARM: 8103/1: save/restore Cortex-A9 CP15 registers on suspend/resume

The CP15 diagnostic register holds ARM errata bits on Cortex-A9, so it
needs to be saved/restored on suspend/resume.  Otherwise, the
effectiveness of errata workaround gets lost together with diagnostic
register bit across suspend/resume cycle.  And the CP15 power control
register of Cortex-A9 shares the same problem.

The patch adds a couple of Cortex-A9 specific suspend/resume functions
to save/restore these two Cortex-A9 CP15 registers across the
suspend/resume cycle.

Signed-off-by: Shawn Guo <shawn.guo@freescale.com>
Acked-by: Nicolas Pitre <nico@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/include/asm/glue-proc.h
arch/arm/mm/proc-v7.S