common: Move checkcpu() out of common.h
authorSimon Glass <sjg@chromium.org>
Thu, 14 Nov 2019 19:57:34 +0000 (12:57 -0700)
committerTom Rini <trini@konsulko.com>
Mon, 2 Dec 2019 23:23:14 +0000 (18:23 -0500)
This function belongs in cpu_func.h so move it over.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
17 files changed:
arch/powerpc/cpu/mpc83xx/cpu.c
arch/powerpc/cpu/mpc8xx/cpu.c
arch/sh/cpu/sh4/cpu.c
arch/x86/cpu/broadwell/cpu_from_spl.c
arch/x86/cpu/coreboot/coreboot.c
arch/x86/cpu/efi/app.c
arch/x86/cpu/efi/payload.c
arch/x86/cpu/ivybridge/cpu.c
arch/x86/cpu/qemu/qemu.c
arch/x86/cpu/quark/quark.c
arch/x86/cpu/slimbootloader/slimbootloader.c
arch/x86/cpu/tangier/tangier.c
arch/x86/cpu/x86_64/cpu.c
arch/x86/lib/fsp/fsp_common.c
common/board_f.c
include/common.h
include/cpu_func.h

index 363c0ff..0710f5a 100644 (file)
@@ -10,6 +10,7 @@
  */
 
 #include <common.h>
+#include <cpu_func.h>
 #include <vsprintf.h>
 #include <watchdog.h>
 #include <command.h>
index 6ad86e9..2b7c5d4 100644 (file)
@@ -17,6 +17,7 @@
  */
 
 #include <common.h>
+#include <cpu_func.h>
 #include <vsprintf.h>
 #include <watchdog.h>
 #include <command.h>
index a8b50a9..ee36aca 100644 (file)
@@ -6,6 +6,7 @@
 
 #include <common.h>
 #include <command.h>
+#include <cpu_func.h>
 #include <netdev.h>
 #include <asm/processor.h>
 
index c3d4a8d..2aa6f24 100644 (file)
@@ -6,6 +6,7 @@
 
 #include <common.h>
 #include <bloblist.h>
+#include <cpu_func.h>
 #include <debug_uart.h>
 #include <handoff.h>
 #include <asm/mtrr.h>
index 9686f8e..0c4c634 100644 (file)
@@ -6,6 +6,7 @@
  */
 
 #include <common.h>
+#include <cpu_func.h>
 #include <fdtdec.h>
 #include <usb.h>
 #include <asm/io.h>
index ba7c02b..1307741 100644 (file)
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <cpu_func.h>
 #include <fdtdec.h>
 #include <netdev.h>
 
index 225aef7..af6dd2f 100644 (file)
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <cpu_func.h>
 #include <efi.h>
 #include <errno.h>
 #include <usb.h>
index 6db9da8..8f30cdb 100644 (file)
@@ -11,6 +11,7 @@
  */
 
 #include <common.h>
+#include <cpu_func.h>
 #include <dm.h>
 #include <errno.h>
 #include <fdtdec.h>
index 5e8b4f0..716351a 100644 (file)
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <cpu_func.h>
 #include <pci.h>
 #include <qfw.h>
 #include <asm/irq.h>
index d39edb2..d6611ee 100644 (file)
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <cpu_func.h>
 #include <mmc.h>
 #include <asm/io.h>
 #include <asm/ioapic.h>
index e6b174c..21dcfb2 100644 (file)
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <cpu_func.h>
 #include <asm/arch/slimbootloader.h>
 
 DECLARE_GLOBAL_DATA_PTR;
index df2c600..43bee1f 100644 (file)
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <cpu_func.h>
 #include <asm/u-boot-x86.h>
 
 /*
index 42abb23..90925e4 100644 (file)
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <cpu_func.h>
 #include <debug_uart.h>
 
 /*
index 40ba866..a5efe35 100644 (file)
@@ -5,6 +5,7 @@
 
 #include <common.h>
 #include <acpi_s3.h>
+#include <cpu_func.h>
 #include <dm.h>
 #include <errno.h>
 #include <rtc.h>
index 0104445..05f4b73 100644 (file)
@@ -13,6 +13,7 @@
 #include <bloblist.h>
 #include <console.h>
 #include <cpu.h>
+#include <cpu_func.h>
 #include <dm.h>
 #include <env.h>
 #include <env_internal.h>
index ce08bfe..96bb42c 100644 (file)
@@ -203,7 +203,6 @@ void        trap_init     (ulong);
 
 void s_init(void);
 
-int    checkcpu      (void);
 int    checkicache   (void);
 int    checkdcache   (void);
 void   upmconfig     (unsigned int, unsigned int *, unsigned int);
index a99b69b..03feaa6 100644 (file)
@@ -20,4 +20,33 @@ int cpu_reset(u32 nr);
 int cpu_disable(u32 nr);
 int cpu_release(u32 nr, int argc, char * const argv[]);
 
+static inline int cpumask_next(int cpu, unsigned int mask)
+{
+       for (cpu++; !((1 << cpu) & mask); cpu++)
+               ;
+
+       return cpu;
+}
+
+#define for_each_cpu(iter, cpu, num_cpus, mask) \
+       for (iter = 0, cpu = cpumask_next(-1, mask); \
+            iter < num_cpus; \
+            iter++, cpu = cpumask_next(cpu, mask)) \
+
+int cpu_numcores(void);
+int cpu_num_dspcores(void);
+u32 cpu_mask(void);
+u32 cpu_dsp_mask(void);
+int is_core_valid(unsigned int core);
+
+/**
+ * checkcpu() - perform an early check of the CPU
+ *
+ * This is used on PowerPC, SH and X86 machines as a CPU init mechanism. It is
+ * called during the pre-relocation init sequence in board_init_f().
+ *
+ * @return 0 if oK, -ve on error
+ */
+int checkcpu(void);
+
 #endif