aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc/kernel/cputable.c
diff options
context:
space:
mode:
authorBenjamin Herrenschmidt <benh@kernel.crashing.org>2009-07-23 19:15:59 -0400
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>2009-08-19 20:25:11 -0400
commit2d27cfd3286966c04d4192a9db5a6c7ea60eebf1 (patch)
treea9e3feb764da5a2be1a6ef9b3a0bf694e874a424 /arch/powerpc/kernel/cputable.c
parent32a74949b7337726e76d69f51c48715431126c6c (diff)
powerpc: Remaining 64-bit Book3E support
This contains all the bits that didn't fit in previous patches :-) This includes the actual exception handlers assembly, the changes to the kernel entry, other misc bits and wiring it all up in Kconfig. Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Diffstat (limited to 'arch/powerpc/kernel/cputable.c')
-rw-r--r--arch/powerpc/kernel/cputable.c27
1 files changed, 25 insertions, 2 deletions
diff --git a/arch/powerpc/kernel/cputable.c b/arch/powerpc/kernel/cputable.c
index 4a24a2fc4574..f34ea37079b5 100644
--- a/arch/powerpc/kernel/cputable.c
+++ b/arch/powerpc/kernel/cputable.c
@@ -93,7 +93,7 @@ extern void __restore_cpu_power7(void);
93 PPC_FEATURE_BOOKE) 93 PPC_FEATURE_BOOKE)
94 94
95static struct cpu_spec __initdata cpu_specs[] = { 95static struct cpu_spec __initdata cpu_specs[] = {
96#ifdef CONFIG_PPC64 96#ifdef CONFIG_PPC_BOOK3S_64
97 { /* Power3 */ 97 { /* Power3 */
98 .pvr_mask = 0xffff0000, 98 .pvr_mask = 0xffff0000,
99 .pvr_value = 0x00400000, 99 .pvr_value = 0x00400000,
@@ -508,7 +508,30 @@ static struct cpu_spec __initdata cpu_specs[] = {
508 .machine_check = machine_check_generic, 508 .machine_check = machine_check_generic,
509 .platform = "power4", 509 .platform = "power4",
510 } 510 }
511#endif /* CONFIG_PPC64 */ 511#endif /* CONFIG_PPC_BOOK3S_64 */
512#ifdef CONFIG_PPC_BOOK3E_64
513 { /* This is a default entry to get going, to be replaced by
514 * a real one at some stage
515 */
516#define CPU_FTRS_BASE_BOOK3E (CPU_FTR_USE_TB | \
517 CPU_FTR_PPCAS_ARCH_V2 | CPU_FTR_SMT | \
518 CPU_FTR_NODSISRALIGN | CPU_FTR_NOEXECUTE)
519 .pvr_mask = 0x00000000,
520 .pvr_value = 0x00000000,
521 .cpu_name = "Book3E",
522 .cpu_features = CPU_FTRS_BASE_BOOK3E,
523 .cpu_user_features = COMMON_USER_PPC64,
524 .mmu_features = MMU_FTR_TYPE_3E | MMU_FTR_USE_TLBILX |
525 MMU_FTR_USE_TLBIVAX_BCAST |
526 MMU_FTR_LOCK_BCAST_INVAL,
527 .icache_bsize = 64,
528 .dcache_bsize = 64,
529 .num_pmcs = 0,
530 .machine_check = machine_check_generic,
531 .platform = "power6",
532 },
533#endif
534
512#ifdef CONFIG_PPC32 535#ifdef CONFIG_PPC32
513#if CLASSIC_PPC 536#if CLASSIC_PPC
514 { /* 601 */ 537 { /* 601 */