diff options
author | Michael Ellerman <michael@ellerman.id.au> | 2005-08-03 20:21:26 +1000 |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2005-08-29 10:53:37 +1000 |
commit | bef5686229810709091fb6e505071f4aa41e3760 (patch) | |
tree | 417f40e7ec6a0d593857ebd338794b664c1f4bcc /include/asm-ppc64/abs_addr.h | |
parent | 71e1f55ad4bc4c8bcfe696400a950a34263a750e (diff) | |
download | lwn-bef5686229810709091fb6e505071f4aa41e3760.tar.gz lwn-bef5686229810709091fb6e505071f4aa41e3760.zip |
[PATCH] ppc64: Remove CONFIG_MSCHUNKS
We can now remove CONFIG_MSCHUNKS as it doesn't do anything interesting
anymore.
The only macro in abs_addr.h which is called by non-iSeries code is
phys_to_abs(), so remove the other dummy implementations, and we add a
firmware feature check to phys_to_abs().
Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'include/asm-ppc64/abs_addr.h')
-rw-r--r-- | include/asm-ppc64/abs_addr.h | 19 |
1 files changed, 5 insertions, 14 deletions
diff --git a/include/asm-ppc64/abs_addr.h b/include/asm-ppc64/abs_addr.h index 200db1c45f29..84c24d4cdb71 100644 --- a/include/asm-ppc64/abs_addr.h +++ b/include/asm-ppc64/abs_addr.h @@ -16,8 +16,7 @@ #include <asm/page.h> #include <asm/prom.h> #include <asm/lmb.h> - -#ifdef CONFIG_MSCHUNKS +#include <asm/firmware.h> struct mschunks_map { unsigned long num_chunks; @@ -48,6 +47,10 @@ static inline unsigned long phys_to_abs(unsigned long pa) { unsigned long chunk; + /* This is a no-op on non-iSeries */ + if (!firmware_has_feature(FW_FEATURE_ISERIES)) + return pa; + chunk = addr_to_chunk(pa); if (chunk < mschunks_map.num_chunks) @@ -56,18 +59,6 @@ static inline unsigned long phys_to_abs(unsigned long pa) return chunk_to_addr(chunk) + (pa & MSCHUNKS_OFFSET_MASK); } -#else /* !CONFIG_MSCHUNKS */ - -#define chunk_to_addr(chunk) ((unsigned long)(chunk)) -#define addr_to_chunk(addr) (addr) -#define chunk_offset(addr) (0) -#define abs_chunk(pchunk) (pchunk) - -#define phys_to_abs(pa) (pa) -#define physRpn_to_absRpn(rpn) (rpn) - -#endif /* !CONFIG_MSCHUNKS */ - /* Convenience macros */ #define virt_to_abs(va) phys_to_abs(__pa(va)) #define abs_to_virt(aa) __va(aa) |