diff options
author | Benjamin Herrenschmidt <benh@kernel.crashing.org> | 2006-02-28 23:07:07 -0500 |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2006-03-03 06:00:23 -0500 |
commit | aa5cb02143123289bd37c30c0ad60339f8da0bad (patch) | |
tree | 63044afa0e3348ec20d63b86ebfa9768123339e7 | |
parent | e2a002b9a731083c69add71b1f5014bac7dc1770 (diff) |
[PATCH] powerpc: Expose SMT and L1 icache snoop userland features
This patch makes userland aware of the icache snoop capability of the
POWER5 (and possibly others in the future) and of SMT capabilities.
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
-rw-r--r-- | arch/powerpc/kernel/cputable.c | 9 | ||||
-rw-r--r-- | include/asm-powerpc/cputable.h | 2 |
2 files changed, 8 insertions, 3 deletions
diff --git a/arch/powerpc/kernel/cputable.c b/arch/powerpc/kernel/cputable.c index 10696456a4c6..e4e81374cb9a 100644 --- a/arch/powerpc/kernel/cputable.c +++ b/arch/powerpc/kernel/cputable.c | |||
@@ -53,8 +53,10 @@ extern void __setup_cpu_ppc970(unsigned long offset, struct cpu_spec* spec); | |||
53 | PPC_FEATURE_HAS_MMU) | 53 | PPC_FEATURE_HAS_MMU) |
54 | #define COMMON_USER_PPC64 (COMMON_USER | PPC_FEATURE_64) | 54 | #define COMMON_USER_PPC64 (COMMON_USER | PPC_FEATURE_64) |
55 | #define COMMON_USER_POWER4 (COMMON_USER_PPC64 | PPC_FEATURE_POWER4) | 55 | #define COMMON_USER_POWER4 (COMMON_USER_PPC64 | PPC_FEATURE_POWER4) |
56 | #define COMMON_USER_POWER5 (COMMON_USER_PPC64 | PPC_FEATURE_POWER5) | 56 | #define COMMON_USER_POWER5 (COMMON_USER_PPC64 | PPC_FEATURE_POWER5 |\ |
57 | #define COMMON_USER_POWER5_PLUS (COMMON_USER_PPC64 | PPC_FEATURE_POWER5_PLUS) | 57 | PPC_FEATURE_SMT | PPC_FEATURE_ICACHE_SNOOP) |
58 | #define COMMON_USER_POWER5_PLUS (COMMON_USER_PPC64 | PPC_FEATURE_POWER5_PLUS|\ | ||
59 | PPC_FEATURE_SMT | PPC_FEATURE_ICACHE_SNOOP) | ||
58 | #define COMMON_USER_BOOKE (PPC_FEATURE_32 | PPC_FEATURE_HAS_MMU | \ | 60 | #define COMMON_USER_BOOKE (PPC_FEATURE_32 | PPC_FEATURE_HAS_MMU | \ |
59 | PPC_FEATURE_BOOKE) | 61 | PPC_FEATURE_BOOKE) |
60 | 62 | ||
@@ -267,7 +269,8 @@ struct cpu_spec cpu_specs[] = { | |||
267 | .cpu_name = "Cell Broadband Engine", | 269 | .cpu_name = "Cell Broadband Engine", |
268 | .cpu_features = CPU_FTRS_CELL, | 270 | .cpu_features = CPU_FTRS_CELL, |
269 | .cpu_user_features = COMMON_USER_PPC64 | | 271 | .cpu_user_features = COMMON_USER_PPC64 | |
270 | PPC_FEATURE_CELL | PPC_FEATURE_HAS_ALTIVEC_COMP, | 272 | PPC_FEATURE_CELL | PPC_FEATURE_HAS_ALTIVEC_COMP | |
273 | PPC_FEATURE_SMT, | ||
271 | .icache_bsize = 128, | 274 | .icache_bsize = 128, |
272 | .dcache_bsize = 128, | 275 | .dcache_bsize = 128, |
273 | .cpu_setup = __setup_cpu_be, | 276 | .cpu_setup = __setup_cpu_be, |
diff --git a/include/asm-powerpc/cputable.h b/include/asm-powerpc/cputable.h index 90d005bb4d1c..5638518968c3 100644 --- a/include/asm-powerpc/cputable.h +++ b/include/asm-powerpc/cputable.h | |||
@@ -20,6 +20,8 @@ | |||
20 | #define PPC_FEATURE_POWER5_PLUS 0x00020000 | 20 | #define PPC_FEATURE_POWER5_PLUS 0x00020000 |
21 | #define PPC_FEATURE_CELL 0x00010000 | 21 | #define PPC_FEATURE_CELL 0x00010000 |
22 | #define PPC_FEATURE_BOOKE 0x00008000 | 22 | #define PPC_FEATURE_BOOKE 0x00008000 |
23 | #define PPC_FEATURE_SMT 0x00004000 | ||
24 | #define PPC_FEATURE_ICACHE_SNOOP 0x00002000 | ||
23 | 25 | ||
24 | #ifdef __KERNEL__ | 26 | #ifdef __KERNEL__ |
25 | #ifndef __ASSEMBLY__ | 27 | #ifndef __ASSEMBLY__ |