aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorMichael Ellerman <michael@ellerman.id.au>2013-04-30 16:17:02 -0400
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>2013-05-01 20:35:16 -0400
commit1de2bd4e0c0f62c697a3b3e19bda431cf67ce20e (patch)
treed8effab6a598d459f4828c81643f13637dbb9ecc /arch
parent53b56ca0195b8a2a098a358088ecfefafb030b40 (diff)
powerpc: Replace CPU_FTR_BCTAR with CPU_FTR_ARCH_207S
We are getting low on cpu feature bits. So rather than add a separate bit for every new Power8 feature, add a bit for arch 2.07 server catagory and use that instead. Hijack the value we had for BCTAR, but swap the value with CFAR so that all the ARCH defines are together. Note we don't touch CPU_FTR_TM, because it is conditionally enabled if the kernel is built with TM support. Signed-off-by: Michael Ellerman <michael@ellerman.id.au> Signed-off-by: Michael Neuling <mikey@neuling.org> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Diffstat (limited to 'arch')
-rw-r--r--arch/powerpc/include/asm/cputable.h8
-rw-r--r--arch/powerpc/kernel/entry_64.S4
2 files changed, 6 insertions, 6 deletions
diff --git a/arch/powerpc/include/asm/cputable.h b/arch/powerpc/include/asm/cputable.h
index 284e50bc7b68..fcc54ad159ba 100644
--- a/arch/powerpc/include/asm/cputable.h
+++ b/arch/powerpc/include/asm/cputable.h
@@ -152,7 +152,7 @@ extern const char *powerpc_base_platform;
152#define CPU_FTR_HVMODE LONG_ASM_CONST(0x0000000100000000) 152#define CPU_FTR_HVMODE LONG_ASM_CONST(0x0000000100000000)
153#define CPU_FTR_ARCH_201 LONG_ASM_CONST(0x0000000200000000) 153#define CPU_FTR_ARCH_201 LONG_ASM_CONST(0x0000000200000000)
154#define CPU_FTR_ARCH_206 LONG_ASM_CONST(0x0000000400000000) 154#define CPU_FTR_ARCH_206 LONG_ASM_CONST(0x0000000400000000)
155#define CPU_FTR_CFAR LONG_ASM_CONST(0x0000000800000000) 155#define CPU_FTR_ARCH_207S LONG_ASM_CONST(0x0000000800000000)
156#define CPU_FTR_IABR LONG_ASM_CONST(0x0000001000000000) 156#define CPU_FTR_IABR LONG_ASM_CONST(0x0000001000000000)
157#define CPU_FTR_MMCRA LONG_ASM_CONST(0x0000002000000000) 157#define CPU_FTR_MMCRA LONG_ASM_CONST(0x0000002000000000)
158#define CPU_FTR_CTRL LONG_ASM_CONST(0x0000004000000000) 158#define CPU_FTR_CTRL LONG_ASM_CONST(0x0000004000000000)
@@ -173,7 +173,7 @@ extern const char *powerpc_base_platform;
173#define CPU_FTR_ICSWX LONG_ASM_CONST(0x0020000000000000) 173#define CPU_FTR_ICSWX LONG_ASM_CONST(0x0020000000000000)
174#define CPU_FTR_VMX_COPY LONG_ASM_CONST(0x0040000000000000) 174#define CPU_FTR_VMX_COPY LONG_ASM_CONST(0x0040000000000000)
175#define CPU_FTR_TM LONG_ASM_CONST(0x0080000000000000) 175#define CPU_FTR_TM LONG_ASM_CONST(0x0080000000000000)
176#define CPU_FTR_BCTAR LONG_ASM_CONST(0x0100000000000000) 176#define CPU_FTR_CFAR LONG_ASM_CONST(0x0100000000000000)
177#define CPU_FTR_HAS_PPR LONG_ASM_CONST(0x0200000000000000) 177#define CPU_FTR_HAS_PPR LONG_ASM_CONST(0x0200000000000000)
178#define CPU_FTR_DAWR LONG_ASM_CONST(0x0400000000000000) 178#define CPU_FTR_DAWR LONG_ASM_CONST(0x0400000000000000)
179 179
@@ -422,8 +422,8 @@ extern const char *powerpc_base_platform;
422 CPU_FTR_DSCR | CPU_FTR_SAO | \ 422 CPU_FTR_DSCR | CPU_FTR_SAO | \
423 CPU_FTR_STCX_CHECKS_ADDRESS | CPU_FTR_POPCNTB | CPU_FTR_POPCNTD | \ 423 CPU_FTR_STCX_CHECKS_ADDRESS | CPU_FTR_POPCNTB | CPU_FTR_POPCNTD | \
424 CPU_FTR_ICSWX | CPU_FTR_CFAR | CPU_FTR_HVMODE | CPU_FTR_VMX_COPY | \ 424 CPU_FTR_ICSWX | CPU_FTR_CFAR | CPU_FTR_HVMODE | CPU_FTR_VMX_COPY | \
425 CPU_FTR_DBELL | CPU_FTR_HAS_PPR | CPU_FTR_DAWR | CPU_FTR_BCTAR | \ 425 CPU_FTR_DBELL | CPU_FTR_HAS_PPR | CPU_FTR_DAWR | \
426 CPU_FTR_TM_COMP) 426 CPU_FTR_ARCH_207S | CPU_FTR_TM_COMP)
427#define CPU_FTRS_CELL (CPU_FTR_USE_TB | CPU_FTR_LWSYNC | \ 427#define CPU_FTRS_CELL (CPU_FTR_USE_TB | CPU_FTR_LWSYNC | \
428 CPU_FTR_PPCAS_ARCH_V2 | CPU_FTR_CTRL | \ 428 CPU_FTR_PPCAS_ARCH_V2 | CPU_FTR_CTRL | \
429 CPU_FTR_ALTIVEC_COMP | CPU_FTR_MMCRA | CPU_FTR_SMT | \ 429 CPU_FTR_ALTIVEC_COMP | CPU_FTR_MMCRA | CPU_FTR_SMT | \
diff --git a/arch/powerpc/kernel/entry_64.S b/arch/powerpc/kernel/entry_64.S
index 04d69c4a5ac2..7a6801faaa83 100644
--- a/arch/powerpc/kernel/entry_64.S
+++ b/arch/powerpc/kernel/entry_64.S
@@ -458,7 +458,7 @@ BEGIN_FTR_SECTION
458 */ 458 */
459 mfspr r0,SPRN_TAR 459 mfspr r0,SPRN_TAR
460 std r0,THREAD_TAR(r3) 460 std r0,THREAD_TAR(r3)
461END_FTR_SECTION_IFSET(CPU_FTR_BCTAR) 461END_FTR_SECTION_IFSET(CPU_FTR_ARCH_207S)
462#endif 462#endif
463 463
464#ifdef CONFIG_SMP 464#ifdef CONFIG_SMP
@@ -547,7 +547,7 @@ END_MMU_FTR_SECTION_IFSET(MMU_FTR_1T_SEGMENT)
547BEGIN_FTR_SECTION 547BEGIN_FTR_SECTION
548 ld r0,THREAD_TAR(r4) 548 ld r0,THREAD_TAR(r4)
549 mtspr SPRN_TAR,r0 549 mtspr SPRN_TAR,r0
550END_FTR_SECTION_IFSET(CPU_FTR_BCTAR) 550END_FTR_SECTION_IFSET(CPU_FTR_ARCH_207S)
551#endif 551#endif
552 552
553#ifdef CONFIG_ALTIVEC 553#ifdef CONFIG_ALTIVEC