aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorLeonid Yegoshin <Leonid.Yegoshin@imgtec.com>2014-11-14 06:25:30 -0500
committerMarkos Chandras <markos.chandras@imgtec.com>2015-02-17 10:37:27 -0500
commit9c7d5768681193b3bb9f00409d689141d20d5bff (patch)
tree630149aaf406e52be62713b0839ead9ad1391aac /arch
parent515a6393dbac4f4492237c7b305bbf9c4c558a1c (diff)
MIPS: kernel: traps: Add MIPS R6 related definitions
Add MIPS R6 support to cache and ftlb exceptions, as well as to the hwrena and ebase register configuration. Signed-off-by: Leonid Yegoshin <Leonid.Yegoshin@imgtec.com> Signed-off-by: Markos Chandras <markos.chandras@imgtec.com>
Diffstat (limited to 'arch')
-rw-r--r--arch/mips/kernel/traps.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/arch/mips/kernel/traps.c b/arch/mips/kernel/traps.c
index 461653ea28c8..6e9d8505e128 100644
--- a/arch/mips/kernel/traps.c
+++ b/arch/mips/kernel/traps.c
@@ -1649,7 +1649,7 @@ asmlinkage void cache_parity_error(void)
1649 printk("Decoded c0_cacheerr: %s cache fault in %s reference.\n", 1649 printk("Decoded c0_cacheerr: %s cache fault in %s reference.\n",
1650 reg_val & (1<<30) ? "secondary" : "primary", 1650 reg_val & (1<<30) ? "secondary" : "primary",
1651 reg_val & (1<<31) ? "data" : "insn"); 1651 reg_val & (1<<31) ? "data" : "insn");
1652 if (cpu_has_mips_r2 && 1652 if ((cpu_has_mips_r2_r6) &&
1653 ((current_cpu_data.processor_id & 0xff0000) == PRID_COMP_MIPS)) { 1653 ((current_cpu_data.processor_id & 0xff0000) == PRID_COMP_MIPS)) {
1654 pr_err("Error bits: %s%s%s%s%s%s%s%s\n", 1654 pr_err("Error bits: %s%s%s%s%s%s%s%s\n",
1655 reg_val & (1<<29) ? "ED " : "", 1655 reg_val & (1<<29) ? "ED " : "",
@@ -1689,7 +1689,7 @@ asmlinkage void do_ftlb(void)
1689 unsigned int reg_val; 1689 unsigned int reg_val;
1690 1690
1691 /* For the moment, report the problem and hang. */ 1691 /* For the moment, report the problem and hang. */
1692 if (cpu_has_mips_r2 && 1692 if ((cpu_has_mips_r2_r6) &&
1693 ((current_cpu_data.processor_id & 0xff0000) == PRID_COMP_MIPS)) { 1693 ((current_cpu_data.processor_id & 0xff0000) == PRID_COMP_MIPS)) {
1694 pr_err("FTLB error exception, cp0_ecc=0x%08x:\n", 1694 pr_err("FTLB error exception, cp0_ecc=0x%08x:\n",
1695 read_c0_ecc()); 1695 read_c0_ecc());
@@ -1978,7 +1978,7 @@ static void configure_hwrena(void)
1978{ 1978{
1979 unsigned int hwrena = cpu_hwrena_impl_bits; 1979 unsigned int hwrena = cpu_hwrena_impl_bits;
1980 1980
1981 if (cpu_has_mips_r2) 1981 if (cpu_has_mips_r2_r6)
1982 hwrena |= 0x0000000f; 1982 hwrena |= 0x0000000f;
1983 1983
1984 if (!noulri && cpu_has_userlocal) 1984 if (!noulri && cpu_has_userlocal)
@@ -2022,7 +2022,7 @@ void per_cpu_trap_init(bool is_boot_cpu)
2022 * o read IntCtl.IPTI to determine the timer interrupt 2022 * o read IntCtl.IPTI to determine the timer interrupt
2023 * o read IntCtl.IPPCI to determine the performance counter interrupt 2023 * o read IntCtl.IPPCI to determine the performance counter interrupt
2024 */ 2024 */
2025 if (cpu_has_mips_r2) { 2025 if (cpu_has_mips_r2_r6) {
2026 cp0_compare_irq_shift = CAUSEB_TI - CAUSEB_IP; 2026 cp0_compare_irq_shift = CAUSEB_TI - CAUSEB_IP;
2027 cp0_compare_irq = (read_c0_intctl() >> INTCTLB_IPTI) & 7; 2027 cp0_compare_irq = (read_c0_intctl() >> INTCTLB_IPTI) & 7;
2028 cp0_perfcount_irq = (read_c0_intctl() >> INTCTLB_IPPCI) & 7; 2028 cp0_perfcount_irq = (read_c0_intctl() >> INTCTLB_IPPCI) & 7;
@@ -2113,7 +2113,7 @@ void __init trap_init(void)
2113#else 2113#else
2114 ebase = CKSEG0; 2114 ebase = CKSEG0;
2115#endif 2115#endif
2116 if (cpu_has_mips_r2) 2116 if (cpu_has_mips_r2_r6)
2117 ebase += (read_c0_ebase() & 0x3ffff000); 2117 ebase += (read_c0_ebase() & 0x3ffff000);
2118 } 2118 }
2119 2119