summaryrefslogtreecommitdiffstats
path: root/arch/arm/kernel/setup.c
diff options
context:
space:
mode:
authorIngo Molnar <mingo@elte.hu>2009-03-04 11:14:47 +0100
committerIngo Molnar <mingo@elte.hu>2009-03-04 11:14:47 +0100
commita1be621dfacbef0fd374d8acd553d71e07bf29ac (patch)
tree32b0355454b43b1098b5e01dd699fd7281abf781 /arch/arm/kernel/setup.c
parent3612fdf780e28b10323dd12d2b0f306c7ada4d4c (diff)
parentfec6c6fec3e20637bee5d276fb61dd8b49a3f9cc (diff)
downloadblackbird-op-linux-a1be621dfacbef0fd374d8acd553d71e07bf29ac.tar.gz
blackbird-op-linux-a1be621dfacbef0fd374d8acd553d71e07bf29ac.zip
Merge branch 'tracing/ftrace'; commit 'v2.6.29-rc7' into tracing/core
Diffstat (limited to 'arch/arm/kernel/setup.c')
-rw-r--r--arch/arm/kernel/setup.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/arch/arm/kernel/setup.c b/arch/arm/kernel/setup.c
index 7049815d66d5..68d6494c0389 100644
--- a/arch/arm/kernel/setup.c
+++ b/arch/arm/kernel/setup.c
@@ -233,12 +233,13 @@ static void __init cacheid_init(void)
unsigned int cachetype = read_cpuid_cachetype();
unsigned int arch = cpu_architecture();
- if (arch >= CPU_ARCH_ARMv7) {
- cacheid = CACHEID_VIPT_NONALIASING;
- if ((cachetype & (3 << 14)) == 1 << 14)
- cacheid |= CACHEID_ASID_TAGGED;
- } else if (arch >= CPU_ARCH_ARMv6) {
- if (cachetype & (1 << 23))
+ if (arch >= CPU_ARCH_ARMv6) {
+ if ((cachetype & (7 << 29)) == 4 << 29) {
+ /* ARMv7 register format */
+ cacheid = CACHEID_VIPT_NONALIASING;
+ if ((cachetype & (3 << 14)) == 1 << 14)
+ cacheid |= CACHEID_ASID_TAGGED;
+ } else if (cachetype & (1 << 23))
cacheid = CACHEID_VIPT_ALIASING;
else
cacheid = CACHEID_VIPT_NONALIASING;
OpenPOWER on IntegriCloud