MIPS: Move identification of VP(E) into proc.c from smp-mt.c
authorMatt Redfearn <matt.redfearn@imgtec.com>
Thu, 4 Aug 2016 16:19:38 +0000 (17:19 +0100)
committerRalf Baechle <ralf@linux-mips.org>
Tue, 4 Oct 2016 14:13:57 +0000 (16:13 +0200)
The addition of VPE information to /proc/cpuinfo used to be in smp-mt.c.
This file is not used by MIPS r6 kernels, so the Virtual Processor
information was not present for these CPU types.

Move the code to print VPE information into proc.c, add a case for MIPS
r6 CPUS, and remove the block from smp-mt.c.

Signed-off-by: Matt Redfearn <matt.redfearn@imgtec.com>
Reviewed-by: Paul Burton <paul.burton@imgtec.com>
Cc: Qais Yousef <qsyousef@gmail.com>
Cc: Zubair Lutfullah Kakakhel <Zubair.Kakakhel@imgtec.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: linux-mips@linux-mips.org
Cc: linux-kernel@vger.kernel.org
Patchwork: https://patchwork.linux-mips.org/patch/13847/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
arch/mips/kernel/proc.c
arch/mips/kernel/smp-mt.c

index 97dc01b03631196252c118f592e58e7b41bca428..4eff2aed736019d6f071b00487d46bfdc76a7308 100644 (file)
@@ -135,6 +135,13 @@ static int show_cpuinfo(struct seq_file *m, void *v)
        seq_printf(m, "package\t\t\t: %d\n", cpu_data[n].package);
        seq_printf(m, "core\t\t\t: %d\n", cpu_data[n].core);
 
+#if defined(CONFIG_MIPS_MT_SMP) || defined(CONFIG_CPU_MIPSR6)
+       if (cpu_has_mipsmt)
+               seq_printf(m, "VPE\t\t\t: %d\n", cpu_data[n].vpe_id);
+       else if (cpu_has_vp)
+               seq_printf(m, "VP\t\t\t: %d\n", cpu_data[n].vpe_id);
+#endif
+
        sprintf(fmt, "VCE%%c exceptions\t\t: %s\n",
                      cpu_has_vce ? "%u" : "not available");
        seq_printf(m, fmt, 'D', vced_count);
index 4f9570a57e8d8a354f48502f92d2d82b5907e3d3..e077ea3e11fb36ee2d5f85f7e8415c97eeead1d9 100644 (file)
@@ -289,26 +289,3 @@ struct plat_smp_ops vsmp_smp_ops = {
        .prepare_cpus           = vsmp_prepare_cpus,
 };
 
-#ifdef CONFIG_PROC_FS
-static int proc_cpuinfo_chain_call(struct notifier_block *nfb,
-       unsigned long action_unused, void *data)
-{
-       struct proc_cpuinfo_notifier_args *pcn = data;
-       struct seq_file *m = pcn->m;
-       unsigned long n = pcn->n;
-
-       if (!cpu_has_mipsmt)
-               return NOTIFY_OK;
-
-       seq_printf(m, "VPE\t\t\t: %d\n", cpu_data[n].vpe_id);
-
-       return NOTIFY_OK;
-}
-
-static int __init proc_cpuinfo_notifier_init(void)
-{
-       return proc_cpuinfo_notifier(proc_cpuinfo_chain_call, 0);
-}
-
-subsys_initcall(proc_cpuinfo_notifier_init);
-#endif