[MIPS] define Hit_Invalidate_I to Index_Invalidate_I for loongson2
[linux-drm-fsl-dcu.git] / arch / mips / kernel / proc.c
index 9def554f335b8f430dd0483dcca482b83c083d07..ec04f5a1a5eadf2078962f682960108845b270ed 100644 (file)
@@ -5,7 +5,6 @@
  *  Copyright (C) 2001, 2004  MIPS Technologies, Inc.
  *  Copyright (C) 2004  Maciej W. Rozycki
  */
-#include <linux/config.h>
 #include <linux/delay.h>
 #include <linux/kernel.h>
 #include <linux/sched.h>
@@ -15,7 +14,6 @@
 #include <asm/cpu-features.h>
 #include <asm/mipsregs.h>
 #include <asm/processor.h>
-#include <asm/watch.h>
 
 unsigned int vced_count, vcei_count;
 
@@ -32,13 +30,13 @@ static const char *cpu_name[] = {
        [CPU_R4000PC]   = "R4000PC",
        [CPU_R4000SC]   = "R4000SC",
        [CPU_R4000MC]   = "R4000MC",
-        [CPU_R4200]    = "R4200",
+       [CPU_R4200]     = "R4200",
        [CPU_R4400PC]   = "R4400PC",
        [CPU_R4400SC]   = "R4400SC",
        [CPU_R4400MC]   = "R4400MC",
        [CPU_R4600]     = "R4600",
        [CPU_R6000]     = "R6000",
-        [CPU_R6000A]   = "R6000A",
+       [CPU_R6000A]    = "R6000A",
        [CPU_R8000]     = "R8000",
        [CPU_R10000]    = "R10000",
        [CPU_R12000]    = "R12000",
@@ -47,14 +45,14 @@ static const char *cpu_name[] = {
        [CPU_R4650]     = "R4650",
        [CPU_R4700]     = "R4700",
        [CPU_R5000]     = "R5000",
-        [CPU_R5000A]   = "R5000A",
+       [CPU_R5000A]    = "R5000A",
        [CPU_R4640]     = "R4640",
        [CPU_NEVADA]    = "Nevada",
        [CPU_RM7000]    = "RM7000",
        [CPU_RM9000]    = "RM9000",
        [CPU_R5432]     = "R5432",
        [CPU_4KC]       = "MIPS 4Kc",
-        [CPU_5KC]      = "MIPS 5Kc",
+       [CPU_5KC]       = "MIPS 5Kc",
        [CPU_R4310]     = "R4310",
        [CPU_SB1]       = "SiByte SB1",
        [CPU_SB1A]      = "SiByte SB1A",
@@ -85,14 +83,15 @@ static const char *cpu_name[] = {
        [CPU_VR4181A]   = "NEC VR4181A",
        [CPU_SR71000]   = "Sandcraft SR71000",
        [CPU_PR4450]    = "Philips PR4450",
+       [CPU_LOONGSON2] = "ICT Loongson-2",
 };
 
 
 static int show_cpuinfo(struct seq_file *m, void *v)
 {
-       unsigned int version = current_cpu_data.processor_id;
-       unsigned int fp_vers = current_cpu_data.fpu_id;
        unsigned long n = (unsigned long) v - 1;
+       unsigned int version = cpu_data[n].processor_id;
+       unsigned int fp_vers = cpu_data[n].fpu_id;
        char fmt [64];
 
 #ifdef CONFIG_SMP
@@ -108,9 +107,9 @@ static int show_cpuinfo(struct seq_file *m, void *v)
 
        seq_printf(m, "processor\t\t: %ld\n", n);
        sprintf(fmt, "cpu model\t\t: %%s V%%d.%%d%s\n",
-               cpu_has_fpu ? "  FPU V%d.%d" : "");
-       seq_printf(m, fmt, cpu_name[current_cpu_data.cputype <= CPU_LAST ?
-                                   current_cpu_data.cputype : CPU_UNKNOWN],
+               cpu_data[n].options & MIPS_CPU_FPU ? "  FPU V%d.%d" : "");
+       seq_printf(m, fmt, cpu_name[cpu_data[n].cputype <= CPU_LAST ?
+                                   cpu_data[n].cputype : CPU_UNKNOWN],
                                   (version >> 4) & 0x0f, version & 0x0f,
                                   (fp_vers >> 4) & 0x0f, fp_vers & 0x0f);
        seq_printf(m, "BogoMIPS\t\t: %lu.%02lu\n",
@@ -119,7 +118,7 @@ static int show_cpuinfo(struct seq_file *m, void *v)
        seq_printf(m, "wait instruction\t: %s\n", cpu_wait ? "yes" : "no");
        seq_printf(m, "microsecond timers\t: %s\n",
                      cpu_has_counter ? "yes" : "no");
-       seq_printf(m, "tlb_entries\t\t: %d\n", current_cpu_data.tlbsize);
+       seq_printf(m, "tlb_entries\t\t: %d\n", cpu_data[n].tlbsize);
        seq_printf(m, "extra interrupt vector\t: %s\n",
                      cpu_has_divec ? "yes" : "no");
        seq_printf(m, "hardware watchpoint\t: %s\n",