[POWERPC] 40x/Book-E: Save/restore volatile exception registers
authorKumar Gala <galak@kernel.crashing.org>
Wed, 30 Apr 2008 10:23:21 +0000 (05:23 -0500)
committerKumar Gala <galak@kernel.crashing.org>
Mon, 2 Jun 2008 19:56:35 +0000 (14:56 -0500)
On machines with more than one exception level any system register that
might be modified by the "normal" exception level needs to be saved and
restored on taking a higher level exception.  We already are saving
and restoring ESR and DEAR.

For critical level add SRR0/1.
For debug level add CSRR0/1 and SRR0/1.
For machine check level add DSRR0/1, CSRR0/1, and SRR0/1.

On FSL Book-E parts we always save/restore the MAS registers for critical,
debug, and machine check level exceptions.  On 44x we always save/restore
the MMUCR.

Additionally, we save and restore the ksp_limit since we have to adjust it
for each exception level.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Acked-by: Paul Mackerras <paulus@samba.org>

No differences found