From: "Steven J. Hill" <sjhill@xxxxxxxx> Signed-off-by: Steven J. Hill <sjhill@xxxxxxxx> --- arch/mips/include/asm/break.h | 11 +++++++++-- arch/mips/include/asm/dsp.h | 4 ++++ arch/mips/kernel/proc.c | 9 +++++++-- 3 files changed, 20 insertions(+), 4 deletions(-) diff --git a/arch/mips/include/asm/break.h b/arch/mips/include/asm/break.h index 9161e68..4e4dc87 100644 --- a/arch/mips/include/asm/break.h +++ b/arch/mips/include/asm/break.h @@ -3,8 +3,9 @@ * License. See the file "COPYING" in the main directory of this archive * for more details. * - * Copyright (C) 1995, 2003 by Ralf Baechle * Copyright (C) 1999 Silicon Graphics, Inc. + * Copyright (C) 1995, 2003 by Ralf Baechle + * Copyright (C) 2011, 2012 MIPS Technologies, Inc. */ #ifndef __ASM_BREAK_H #define __ASM_BREAK_H @@ -27,11 +28,17 @@ #define BRK_STACKOVERFLOW 9 /* For Ada stackchecking */ #define BRK_NORLD 10 /* No rld found - not used by Linux/MIPS */ #define _BRK_THREADBP 11 /* For threads, user bp (used by debuggers) */ + +#ifdef CONFIG_CPU_MICROMIPS +#define BRK_BUG 12 /* Used by BUG() */ +#define BRK_KDB 13 /* Used in KDB_ENTER() */ +#else #define BRK_BUG 512 /* Used by BUG() */ #define BRK_KDB 513 /* Used in KDB_ENTER() */ +#endif +#define MM_BRK_MEMU 14 /* Used by FPU emulator (microMIPS) */ #define BRK_MEMU 514 /* Used by FPU emulator */ #define BRK_KPROBE_BP 515 /* Kprobe break */ #define BRK_KPROBE_SSTEPBP 516 /* Kprobe single step software implementation */ -#define BRK_MULOVF 1023 /* Multiply overflow */ #endif /* __ASM_BREAK_H */ diff --git a/arch/mips/include/asm/dsp.h b/arch/mips/include/asm/dsp.h index e9bfc08..3149b30 100644 --- a/arch/mips/include/asm/dsp.h +++ b/arch/mips/include/asm/dsp.h @@ -16,7 +16,11 @@ #include <asm/mipsregs.h> #define DSP_DEFAULT 0x00000000 +#ifdef CONFIG_CPU_MICROMIPS +#define DSP_MASK 0x7f +#else #define DSP_MASK 0x3ff +#endif #define __enable_dsp_hazard() \ do { \ diff --git a/arch/mips/kernel/proc.c b/arch/mips/kernel/proc.c index 5542817..c5e97d4 100644 --- a/arch/mips/kernel/proc.c +++ b/arch/mips/kernel/proc.c @@ -64,14 +64,19 @@ static int show_cpuinfo(struct seq_file *m, void *v) cpu_data[n].watch_reg_masks[i]); seq_printf(m, "]\n"); } - seq_printf(m, "ASEs implemented\t:%s%s%s%s%s%s\n", + seq_printf(m, "ASEs implemented\t:%s%s%s%s%s%s%s\n", cpu_has_mips16 ? " mips16" : "", cpu_has_mdmx ? " mdmx" : "", cpu_has_mips3d ? " mips3d" : "", cpu_has_smartmips ? " smartmips" : "", cpu_has_dsp ? " dsp" : "", - cpu_has_mipsmt ? " mt" : "" + cpu_has_mipsmt ? " mt" : "", + cpu_has_mmips ? " micromips" : "" ); + if (cpu_has_mmips) { + seq_printf(m, "micromips kernel\t: %s\n", + (read_c0_config3() & MIPS_CONF3_ISA_OE) ? "yes" : "no"); + } seq_printf(m, "shadow register sets\t: %d\n", cpu_data[n].srsets); seq_printf(m, "kscratch registers\t: %d\n", -- 1.7.10