aboutsummaryrefslogtreecommitdiffstats
path: root/arch/mips/include/asm/mach-cavium-octeon/kernel-entry-init.h
diff options
context:
space:
mode:
authorChandrakala Chavva <cchavva@caviumnetworks.com>2011-02-17 16:57:52 -0500
committerRalf Baechle <ralf@linux-mips.org>2011-05-19 04:55:49 -0400
commit7716e6548abed1582a7759666e79d5c612a906c7 (patch)
treeebd12144faf525408ed82f6415804b02ee712440 /arch/mips/include/asm/mach-cavium-octeon/kernel-entry-init.h
parentb32ee693eb106172f89639acff88dc8fee8ba3e2 (diff)
Octeon: Fix interrupt irq settings for performance counters.
Octeon uses different interrupt irq for timer and performance counters. Set CvmCtl[IPPCI] to correct irq value very early. Signed-off-by: Chandrakala Chavva <cchavva@caviumnetworks.com> Signed-off-by: David Daney <ddaney@caviumnetworks.com> To: linux-mips@linux-mips.org Cc: Chandrakala Chavva <cchavva@caviumnetworks.com> Patchwork: https://patchwork.linux-mips.org/patch/2085/ Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch/mips/include/asm/mach-cavium-octeon/kernel-entry-init.h')
-rw-r--r--arch/mips/include/asm/mach-cavium-octeon/kernel-entry-init.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/arch/mips/include/asm/mach-cavium-octeon/kernel-entry-init.h b/arch/mips/include/asm/mach-cavium-octeon/kernel-entry-init.h
index 0b2b5eb22e9b..dedef7d2b01f 100644
--- a/arch/mips/include/asm/mach-cavium-octeon/kernel-entry-init.h
+++ b/arch/mips/include/asm/mach-cavium-octeon/kernel-entry-init.h
@@ -63,6 +63,11 @@
63 # CN30XX Disable instruction prefetching 63 # CN30XX Disable instruction prefetching
64 or v0, v0, 0x2000 64 or v0, v0, 0x2000
65skip: 65skip:
66 # First clear off CvmCtl[IPPCI] bit and move the performance
67 # counters interrupt to IRQ 6
68 li v1, ~(7 << 7)
69 and v0, v0, v1
70 ori v0, v0, (6 << 7)
66 # Write the cavium control register 71 # Write the cavium control register
67 dmtc0 v0, CP0_CVMCTL_REG 72 dmtc0 v0, CP0_CVMCTL_REG
68 sync 73 sync