diff options
author | Paul Mundt <lethal@linux-sh.org> | 2010-01-13 10:45:12 +0100 |
---|---|---|
committer | Paul Mundt <lethal@linux-sh.org> | 2010-01-13 10:45:12 +0100 |
commit | 206582c3161f165f5bf49ececa962c5f95fdf0a3 (patch) | |
tree | 0137f03e4504a102a3ffade66ac838a9f0c0bcc2 | |
parent | sh: Fix up L2 cache comment typo. (diff) | |
download | linux-206582c3161f165f5bf49ececa962c5f95fdf0a3.tar.xz linux-206582c3161f165f5bf49ececa962c5f95fdf0a3.zip |
sh: Make all PxSEGADDR() calls fatal for non-legacy configs.
This stubs out all of the PxSEGADDR() wrappers for non-legacy code.
29-bit will continue to work with these, while 32-bit code will now blow
up on compile rather than at runtime.
The vast majority of the in-tree offenders are gone, with the only
remaining culprits being unable to support 32-bit mode.
Hopefully this will prevent anyone from ever using these again.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
-rw-r--r-- | arch/sh/include/asm/addrspace.h | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/arch/sh/include/asm/addrspace.h b/arch/sh/include/asm/addrspace.h index bcd7d4d78f6b..268efd62ed21 100644 --- a/arch/sh/include/asm/addrspace.h +++ b/arch/sh/include/asm/addrspace.h @@ -40,7 +40,15 @@ ((__typeof__(a))(((unsigned long)(a) & 0x1fffffff) | P3SEG)) #define P4SEGADDR(a) \ ((__typeof__(a))(((unsigned long)(a) & 0x1fffffff) | P4SEG)) -#endif /* 29BIT */ +#else +/* + * These will never work in 32-bit, don't even bother. + */ +#define P1SEGADDR(a) __futile_remapping_attempt +#define P2SEGADDR(a) __futile_remapping_attempt +#define P3SEGADDR(a) __futile_remapping_attempt +#define P4SEGADDR(a) __futile_remapping_attempt +#endif #endif /* P1SEG */ /* Check if an address can be reached in 29 bits */ |