]> bbs.cooldavid.org Git - net-next-2.6.git/commitdiff
powerpc/cpumask: Refactor /proc/cpuinfo code
authorAnton Blanchard <anton@samba.org>
Mon, 26 Apr 2010 15:32:39 +0000 (15:32 +0000)
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>
Thu, 6 May 2010 07:41:54 +0000 (17:41 +1000)
This separates the per cpu output from the summary output at the end of the
file, making it easier to convert to the new cpumask API in a subsequent
patch.

Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
arch/powerpc/kernel/setup-common.c

index 48f0a008b20b15b9fe3377e938dff25c712c15b3..58699a43eaa2cd7e007fd5d3a08625a3c87ecc11 100644 (file)
@@ -161,6 +161,38 @@ extern u32 cpu_temp_both(unsigned long cpu);
 DEFINE_PER_CPU(unsigned int, cpu_pvr);
 #endif
 
+static void show_cpuinfo_summary(struct seq_file *m)
+{
+       struct device_node *root;
+       const char *model = NULL;
+#if defined(CONFIG_SMP) && defined(CONFIG_PPC32)
+       unsigned long bogosum = 0;
+       int i;
+       for_each_online_cpu(i)
+               bogosum += loops_per_jiffy;
+       seq_printf(m, "total bogomips\t: %lu.%02lu\n",
+                  bogosum/(500000/HZ), bogosum/(5000/HZ) % 100);
+#endif /* CONFIG_SMP && CONFIG_PPC32 */
+       seq_printf(m, "timebase\t: %lu\n", ppc_tb_freq);
+       if (ppc_md.name)
+               seq_printf(m, "platform\t: %s\n", ppc_md.name);
+       root = of_find_node_by_path("/");
+       if (root)
+               model = of_get_property(root, "model", NULL);
+       if (model)
+               seq_printf(m, "model\t\t: %s\n", model);
+       of_node_put(root);
+
+       if (ppc_md.show_cpuinfo != NULL)
+               ppc_md.show_cpuinfo(m);
+
+#ifdef CONFIG_PPC32
+       /* Display the amount of memory */
+       seq_printf(m, "Memory\t\t: %d MB\n",
+                  (unsigned int)(total_memory / (1024 * 1024)));
+#endif
+}
+
 static int show_cpuinfo(struct seq_file *m, void *v)
 {
        unsigned long cpu_id = (unsigned long)v - 1;
@@ -169,35 +201,7 @@ static int show_cpuinfo(struct seq_file *m, void *v)
        unsigned short min;
 
        if (cpu_id == NR_CPUS) {
-               struct device_node *root;
-               const char *model = NULL;
-#if defined(CONFIG_SMP) && defined(CONFIG_PPC32)
-               unsigned long bogosum = 0;
-               int i;
-               for_each_online_cpu(i)
-                       bogosum += loops_per_jiffy;
-               seq_printf(m, "total bogomips\t: %lu.%02lu\n",
-                          bogosum/(500000/HZ), bogosum/(5000/HZ) % 100);
-#endif /* CONFIG_SMP && CONFIG_PPC32 */
-               seq_printf(m, "timebase\t: %lu\n", ppc_tb_freq);
-               if (ppc_md.name)
-                       seq_printf(m, "platform\t: %s\n", ppc_md.name);
-               root = of_find_node_by_path("/");
-               if (root)
-                       model = of_get_property(root, "model", NULL);
-               if (model)
-                       seq_printf(m, "model\t\t: %s\n", model);
-               of_node_put(root);
-
-               if (ppc_md.show_cpuinfo != NULL)
-                       ppc_md.show_cpuinfo(m);
-
-#ifdef CONFIG_PPC32
-               /* Display the amount of memory */
-               seq_printf(m, "Memory\t\t: %d MB\n",
-                          (unsigned int)(total_memory / (1024 * 1024)));
-#endif
-
+               show_cpuinfo_summary(m);
                return 0;
        }