[PATCH v2 35/39] bdinfo: m68k: Move m68k-specific info into its own file

Simon Glass sjg at chromium.org
Sun May 10 22:16:58 CEST 2020


We don't really want to have m68k-specific code in a generic file. Create
a new arch-specific function to hold it, and move it into that.

Make the function weak so that any arch can implement it.

Signed-off-by: Simon Glass <sjg at chromium.org>
Reviewed-by: Bin Meng <bmeng.cn at gmail.com>
Tested-by: Angelo Dureghello <angelo.dureghello at timesys.com>
---

Changes in v2: None

 arch/m68k/lib/Makefile |  1 +
 arch/m68k/lib/bdinfo.c | 29 +++++++++++++++++++++++++++++
 cmd/bdinfo.c           | 15 ---------------
 3 files changed, 30 insertions(+), 15 deletions(-)
 create mode 100644 arch/m68k/lib/bdinfo.c

diff --git a/arch/m68k/lib/Makefile b/arch/m68k/lib/Makefile
index a040f40eb8..b66d66afd2 100644
--- a/arch/m68k/lib/Makefile
+++ b/arch/m68k/lib/Makefile
@@ -7,6 +7,7 @@
 ## if the user asked for it
 lib-$(CONFIG_USE_PRIVATE_LIBGCC) += lshrdi3.o muldi3.o ashldi3.o
 
+obj-y	+= bdinfo.o
 obj-$(CONFIG_CMD_BOOTM) += bootm.o
 obj-y	+= cache.o
 obj-y	+= interrupts.o
diff --git a/arch/m68k/lib/bdinfo.c b/arch/m68k/lib/bdinfo.c
new file mode 100644
index 0000000000..09a1abfc21
--- /dev/null
+++ b/arch/m68k/lib/bdinfo.c
@@ -0,0 +1,29 @@
+// SPDX-License-Identifier: GPL-2.0+
+/*
+ * PPC-specific information for the 'bd' command
+ *
+ * (C) Copyright 2003
+ * Wolfgang Denk, DENX Software Engineering, wd at denx.de.
+ */
+
+#include <common.h>
+#include <init.h>
+
+DECLARE_GLOBAL_DATA_PTR;
+
+void arch_print_bdinfo(void)
+{
+	bd_t *bd = gd->bd;
+
+#if defined(CONFIG_SYS_MBAR)
+	bdinfo_print_num("mbar", bd->bi_mbar_base);
+#endif
+	bdinfo_print_mhz("cpufreq", bd->bi_intfreq);
+	if (IS_ENABLED(CONFIG_PCI))
+		bdinfo_print_mhz("pcifreq", bd->bi_pcifreq);
+#ifdef CONFIG_EXTRA_CLOCK
+	bdinfo_print_mhz("flbfreq", bd->bi_flbfreq);
+	bdinfo_print_mhz("inpfreq", bd->bi_inpfreq);
+	bdinfo_print_mhz("vcofreq", bd->bi_vcofreq);
+#endif
+}
diff --git a/cmd/bdinfo.c b/cmd/bdinfo.c
index 97748c012e..b31ea66b74 100644
--- a/cmd/bdinfo.c
+++ b/cmd/bdinfo.c
@@ -107,21 +107,6 @@ int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc, char *const argv[])
 	if (IS_ENABLED(CONFIG_PPC) || IS_ENABLED(CONFIG_M68K))
 		bdinfo_print_mhz("busfreq", bd->bi_busfreq);
 
-	/* The rest are used only by m68k */
-#ifdef CONFIG_M68K
-#if defined(CONFIG_SYS_MBAR)
-	bdinfo_print_num("mbar", bd->bi_mbar_base);
-#endif
-	bdinfo_print_mhz("cpufreq", bd->bi_intfreq);
-	if (IS_ENABLED(CONFIG_PCI))
-		bdinfo_print_mhz("pcifreq", bd->bi_pcifreq);
-#ifdef CONFIG_EXTRA_CLOCK
-	bdinfo_print_mhz("flbfreq", bd->bi_flbfreq);
-	bdinfo_print_mhz("inpfreq", bd->bi_inpfreq);
-	bdinfo_print_mhz("vcofreq", bd->bi_vcofreq);
-#endif
-#endif
-
 	return 0;
 }
 
-- 
2.26.2.645.ge9eca65c58-goog



More information about the U-Boot mailing list