diff options
author | Catalin Marinas <catalin.marinas@arm.com> | 2011-11-22 17:30:31 +0000 |
---|---|---|
committer | Catalin Marinas <catalin.marinas@arm.com> | 2011-12-08 10:30:40 +0000 |
commit | f7b8156d150f7383b42622a9219b230b36435b4a (patch) | |
tree | c06e0ed558f7a9e106920a9f3acbb6bed15017bf /arch/arm/include/asm | |
parent | c9f27f1026f55b543df260ad8ab84a7bdab7792f (diff) | |
download | blackbird-op-linux-f7b8156d150f7383b42622a9219b230b36435b4a.tar.gz blackbird-op-linux-f7b8156d150f7383b42622a9219b230b36435b4a.zip |
ARM: LPAE: Add fault handling support
The DFSR and IFSR register format is different when LPAE is enabled. In
addition, DFSR and IFSR have similar definitions for the fault type.
This modifies the fault code to correctly handle the new format.
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Diffstat (limited to 'arch/arm/include/asm')
-rw-r--r-- | arch/arm/include/asm/system.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/arch/arm/include/asm/system.h b/arch/arm/include/asm/system.h index fe7de7571bac..53785828744c 100644 --- a/arch/arm/include/asm/system.h +++ b/arch/arm/include/asm/system.h @@ -80,6 +80,14 @@ struct siginfo; void arm_notify_die(const char *str, struct pt_regs *regs, struct siginfo *info, unsigned long err, unsigned long trap); +#ifdef CONFIG_ARM_LPAE +#define FAULT_CODE_ALIGNMENT 33 +#define FAULT_CODE_DEBUG 34 +#else +#define FAULT_CODE_ALIGNMENT 1 +#define FAULT_CODE_DEBUG 2 +#endif + void hook_fault_code(int nr, int (*fn)(unsigned long, unsigned int, struct pt_regs *), int sig, int code, const char *name); |