powerpc: Add definitions used by exception handling on 64-bit Book3E
This adds various definitions and macros used by the exception and TLB miss handling on 64-bit BookE It also adds the definitions of the SPRGs used for various exception types Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
This commit is contained in:
@ -652,6 +652,16 @@
|
||||
* - SPRG2 scratch for exception vectors
|
||||
* - SPRG3 unused (user visible)
|
||||
*
|
||||
* 64-bit embedded
|
||||
* - SPRG0 generic exception scratch
|
||||
* - SPRG2 TLB exception stack
|
||||
* - SPRG3 unused (user visible)
|
||||
* - SPRG4 unused (user visible)
|
||||
* - SPRG6 TLB miss scratch (user visible, sorry !)
|
||||
* - SPRG7 critical exception scratch
|
||||
* - SPRG8 machine check exception scratch
|
||||
* - SPRG9 debug exception scratch
|
||||
*
|
||||
* All 32-bit:
|
||||
* - SPRG3 current thread_info pointer
|
||||
* (virtual on BookE, physical on others)
|
||||
@ -705,6 +715,15 @@
|
||||
#define SPRN_SPRG_SCRATCH0 SPRN_SPRG2
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_PPC_BOOK3E_64
|
||||
#define SPRN_SPRG_MC_SCRATCH SPRN_SPRG8
|
||||
#define SPRN_SPRG_CRIT_SCRATCH SPRN_SPRG7
|
||||
#define SPRN_SPRG_DBG_SCRATCH SPRN_SPRG9
|
||||
#define SPRN_SPRG_TLB_EXFRAME SPRN_SPRG2
|
||||
#define SPRN_SPRG_TLB_SCRATCH SPRN_SPRG6
|
||||
#define SPRN_SPRG_GEN_SCRATCH SPRN_SPRG0
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_PPC_BOOK3S_32
|
||||
#define SPRN_SPRG_SCRATCH0 SPRN_SPRG0
|
||||
#define SPRN_SPRG_SCRATCH1 SPRN_SPRG1
|
||||
|
Reference in New Issue
Block a user