ARM: 7885/1: Save/Restore 64-bit TTBR registers on LPAE suspend/resume
authorMahesh Sivasubramanian <msivasub@codeaurora.org>
Fri, 8 Nov 2013 22:25:20 +0000 (23:25 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Thu, 14 Nov 2013 11:13:11 +0000 (11:13 +0000)
commitf3db3f4389dbd9a8c2b4477f37a6ebddfd670ad8
treeea5f88d71023ca169b00d178abda7213febc188d
parent905b57972149f205aa73b0a3b6935b0e5470ab24
ARM: 7885/1: Save/Restore 64-bit TTBR registers on LPAE suspend/resume

LPAE enabled kernels use the 64-bit version of TTBR0 and TTBR1
registers. If we're running an LPAE kernel, fill the upper half
of TTBR0 with 0 because we're setting it to the idmap here (the
idmap is guaranteed to be < 4Gb) and fully restore TTBR1 instead
of just restoring the lower 32 bits. Failure to do so can cause
failures on resume from suspend when these registers are only
half restored.

Signed-off-by: Mahesh Sivasubramanian <msivasub@codeaurora.org>
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
Acked-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/mm/proc-v7.S