aboutsummaryrefslogtreecommitdiffstats
path: root/arch/sh/kernel/cpu
diff options
context:
space:
mode:
authorPaul Mundt <lethal@linux-sh.org>2008-07-02 04:46:40 -0400
committerPaul Mundt <lethal@linux-sh.org>2008-07-28 05:10:32 -0400
commit068f59143d821553e7a55cdbd69142b05e245d47 (patch)
tree12ce88fa8d041c2bc3095b4f5561bea2d3e141ff /arch/sh/kernel/cpu
parent09b5a10c1944214a6008712bfa92b29f00b84a1a (diff)
sh: Record the major cut revision for probed SH-4A parts.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'arch/sh/kernel/cpu')
-rw-r--r--arch/sh/kernel/cpu/sh4/probe.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/arch/sh/kernel/cpu/sh4/probe.c b/arch/sh/kernel/cpu/sh4/probe.c
index db442f37852d..2e42572b1b11 100644
--- a/arch/sh/kernel/cpu/sh4/probe.c
+++ b/arch/sh/kernel/cpu/sh4/probe.c
@@ -50,23 +50,24 @@ int __init detect_cpu_and_cache_system(void)
50 boot_cpu_data.dcache.ways = 1; 50 boot_cpu_data.dcache.ways = 1;
51 boot_cpu_data.dcache.linesz = L1_CACHE_BYTES; 51 boot_cpu_data.dcache.linesz = L1_CACHE_BYTES;
52 52
53 /* We don't know the chip cut */
54 boot_cpu_data.cut_major = boot_cpu_data.cut_minor = -1;
55
53 /* 56 /*
54 * Setup some generic flags we can probe on SH-4A parts 57 * Setup some generic flags we can probe on SH-4A parts
55 */ 58 */
56 if (((pvr >> 24) & 0xff) == 0x10) { 59 if (((pvr >> 16) & 0xff) == 0x10) {
57 if ((cvr & 0x10000000) == 0) 60 if ((cvr & 0x10000000) == 0)
58 boot_cpu_data.flags |= CPU_HAS_DSP; 61 boot_cpu_data.flags |= CPU_HAS_DSP;
59 62
60 boot_cpu_data.flags |= CPU_HAS_LLSC; 63 boot_cpu_data.flags |= CPU_HAS_LLSC;
64 boot_cpu_data.cut_major = pvr & 0x7f;
61 } 65 }
62 66
63 /* FPU detection works for everyone */ 67 /* FPU detection works for everyone */
64 if ((cvr & 0x20000000) == 1) 68 if ((cvr & 0x20000000) == 1)
65 boot_cpu_data.flags |= CPU_HAS_FPU; 69 boot_cpu_data.flags |= CPU_HAS_FPU;
66 70
67 /* We don't know the chip cut */
68 boot_cpu_data.cut_major = boot_cpu_data.cut_minor = -1;
69
70 /* Mask off the upper chip ID */ 71 /* Mask off the upper chip ID */
71 pvr &= 0xffff; 72 pvr &= 0xffff;
72 73