diff mbox series

[31/36] bdinfo: ppc: Move PPC-specific info into its own file

Message ID 20200504231732.98778-23-sjg@chromium.org
State Superseded
Headers show
Series Tidy up the 'bd' command. | expand

Commit Message

Simon Glass May 4, 2020, 11:17 p.m. UTC
We don't really want to have PPC-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>
---

 arch/powerpc/lib/Makefile |  2 ++
 arch/powerpc/lib/bdinfo.c | 41 +++++++++++++++++++++++++++++++++++++++
 cmd/bdinfo.c              | 27 --------------------------
 3 files changed, 43 insertions(+), 27 deletions(-)
 create mode 100644 arch/powerpc/lib/bdinfo.c

Comments

Bin Meng May 6, 2020, 8:10 a.m. UTC | #1
On Tue, May 5, 2020 at 7:19 AM Simon Glass <sjg at chromium.org> wrote:
>
> We don't really want to have PPC-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>
> ---
>
>  arch/powerpc/lib/Makefile |  2 ++
>  arch/powerpc/lib/bdinfo.c | 41 +++++++++++++++++++++++++++++++++++++++
>  cmd/bdinfo.c              | 27 --------------------------
>  3 files changed, 43 insertions(+), 27 deletions(-)
>  create mode 100644 arch/powerpc/lib/bdinfo.c
>

Reviewed-by: Bin Meng <bmeng.cn at gmail.com>
Stefan Roese May 6, 2020, 3:10 p.m. UTC | #2
On 05.05.20 01:17, Simon Glass wrote:
> We don't really want to have PPC-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: Stefan Roese <sr at denx.de>

Thanks,
Stefan

> ---
> 
>   arch/powerpc/lib/Makefile |  2 ++
>   arch/powerpc/lib/bdinfo.c | 41 +++++++++++++++++++++++++++++++++++++++
>   cmd/bdinfo.c              | 27 --------------------------
>   3 files changed, 43 insertions(+), 27 deletions(-)
>   create mode 100644 arch/powerpc/lib/bdinfo.c
> 
> diff --git a/arch/powerpc/lib/Makefile b/arch/powerpc/lib/Makefile
> index 01c9dd51be..f61809ab05 100644
> --- a/arch/powerpc/lib/Makefile
> +++ b/arch/powerpc/lib/Makefile
> @@ -15,6 +15,8 @@ MINIMAL=y
>   endif
>   endif
>   
> +obj-y	+= bdinfo.o
> +
>   ifdef MINIMAL
>   obj-y += cache.o time.o
>   ifndef CONFIG_TIMER
> diff --git a/arch/powerpc/lib/bdinfo.c b/arch/powerpc/lib/bdinfo.c
> new file mode 100644
> index 0000000000..da09bb276f
> --- /dev/null
> +++ b/arch/powerpc/lib/bdinfo.c
> @@ -0,0 +1,41 @@
> +// 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 __weak board_detail(void)
> +{
> +	/* Please define board_detail() for your PPC platform */
> +}
> +
> +void arch_print_bdinfo(void)
> +{
> +	bd_t *bd = gd->bd;
> +
> +#if defined(CONFIG_MPC8xx) || defined(CONFIG_E500)
> +	bdinfo_print_num("immr_base", bd->bi_immr_base);
> +#endif
> +	bdinfo_print_num("bootflags", bd->bi_bootflags);
> +	bdinfo_print_mhz("intfreq", bd->bi_intfreq);
> +#ifdef CONFIG_ENABLE_36BIT_PHYS
> +	if (IS_ENABLED(CONFIG_PHYS_64BIT))
> +		puts("addressing  = 36-bit\n");
> +	else
> +		puts("addressing  = 32-bit\n");
> +#endif
> +	board_detail();
> +#if defined(CONFIG_CPM2)
> +	bdinfo_print_mhz("cpmfreq", bd->bi_cpmfreq);
> +	bdinfo_print_mhz("vco", bd->bi_vco);
> +	bdinfo_print_mhz("sccfreq", bd->bi_sccfreq);
> +	bdinfo_print_mhz("brgfreq", bd->bi_brgfreq);
> +#endif
> +}
> diff --git a/cmd/bdinfo.c b/cmd/bdinfo.c
> index 55a9244aef..570022052c 100644
> --- a/cmd/bdinfo.c
> +++ b/cmd/bdinfo.c
> @@ -60,11 +60,6 @@ static void print_bi_dram(const bd_t *bd)
>   #endif
>   }
>   
> -void __weak board_detail(void)
> -{
> -	/* Please define board_detail() for your PPC platform */
> -}
> -
>   __weak void arch_print_bdinfo(void)
>   {
>   }
> @@ -103,28 +98,6 @@ int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc, char *const argv[])
>   
>   	arch_print_bdinfo();
>   
> -	/* This section is used only by ppc */
> -#if defined(CONFIG_MPC8xx) || defined(CONFIG_E500)
> -	bdinfo_print_num("immr_base", bd->bi_immr_base);
> -#endif
> -	if (IS_ENABLED(CONFIG_PPC)) {
> -		bdinfo_print_num("bootflags", bd->bi_bootflags);
> -		bdinfo_print_mhz("intfreq", bd->bi_intfreq);
> -#ifdef CONFIG_ENABLE_36BIT_PHYS
> -		if (IS_ENABLED(CONFIG_PHYS_64BIT))
> -			puts("addressing  = 36-bit\n");
> -		else
> -			puts("addressing  = 32-bit\n");
> -#endif
> -		board_detail();
> -	}
> -#if defined(CONFIG_CPM2)
> -	bdinfo_print_mhz("cpmfreq", bd->bi_cpmfreq);
> -	bdinfo_print_mhz("vco", bd->bi_vco);
> -	bdinfo_print_mhz("sccfreq", bd->bi_sccfreq);
> -	bdinfo_print_mhz("brgfreq", bd->bi_brgfreq);
> -#endif
> -
>   	/* This is used by m68k and ppc */
>   #if defined(CONFIG_SYS_INIT_RAM_ADDR)
>   	bdinfo_print_num("sramstart", (ulong)bd->bi_sramstart);
> 


Viele Gr??e,
Stefan
diff mbox series

Patch

diff --git a/arch/powerpc/lib/Makefile b/arch/powerpc/lib/Makefile
index 01c9dd51be..f61809ab05 100644
--- a/arch/powerpc/lib/Makefile
+++ b/arch/powerpc/lib/Makefile
@@ -15,6 +15,8 @@  MINIMAL=y
 endif
 endif
 
+obj-y	+= bdinfo.o
+
 ifdef MINIMAL
 obj-y += cache.o time.o
 ifndef CONFIG_TIMER
diff --git a/arch/powerpc/lib/bdinfo.c b/arch/powerpc/lib/bdinfo.c
new file mode 100644
index 0000000000..da09bb276f
--- /dev/null
+++ b/arch/powerpc/lib/bdinfo.c
@@ -0,0 +1,41 @@ 
+// 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 __weak board_detail(void)
+{
+	/* Please define board_detail() for your PPC platform */
+}
+
+void arch_print_bdinfo(void)
+{
+	bd_t *bd = gd->bd;
+
+#if defined(CONFIG_MPC8xx) || defined(CONFIG_E500)
+	bdinfo_print_num("immr_base", bd->bi_immr_base);
+#endif
+	bdinfo_print_num("bootflags", bd->bi_bootflags);
+	bdinfo_print_mhz("intfreq", bd->bi_intfreq);
+#ifdef CONFIG_ENABLE_36BIT_PHYS
+	if (IS_ENABLED(CONFIG_PHYS_64BIT))
+		puts("addressing  = 36-bit\n");
+	else
+		puts("addressing  = 32-bit\n");
+#endif
+	board_detail();
+#if defined(CONFIG_CPM2)
+	bdinfo_print_mhz("cpmfreq", bd->bi_cpmfreq);
+	bdinfo_print_mhz("vco", bd->bi_vco);
+	bdinfo_print_mhz("sccfreq", bd->bi_sccfreq);
+	bdinfo_print_mhz("brgfreq", bd->bi_brgfreq);
+#endif
+}
diff --git a/cmd/bdinfo.c b/cmd/bdinfo.c
index 55a9244aef..570022052c 100644
--- a/cmd/bdinfo.c
+++ b/cmd/bdinfo.c
@@ -60,11 +60,6 @@  static void print_bi_dram(const bd_t *bd)
 #endif
 }
 
-void __weak board_detail(void)
-{
-	/* Please define board_detail() for your PPC platform */
-}
-
 __weak void arch_print_bdinfo(void)
 {
 }
@@ -103,28 +98,6 @@  int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc, char *const argv[])
 
 	arch_print_bdinfo();
 
-	/* This section is used only by ppc */
-#if defined(CONFIG_MPC8xx) || defined(CONFIG_E500)
-	bdinfo_print_num("immr_base", bd->bi_immr_base);
-#endif
-	if (IS_ENABLED(CONFIG_PPC)) {
-		bdinfo_print_num("bootflags", bd->bi_bootflags);
-		bdinfo_print_mhz("intfreq", bd->bi_intfreq);
-#ifdef CONFIG_ENABLE_36BIT_PHYS
-		if (IS_ENABLED(CONFIG_PHYS_64BIT))
-			puts("addressing  = 36-bit\n");
-		else
-			puts("addressing  = 32-bit\n");
-#endif
-		board_detail();
-	}
-#if defined(CONFIG_CPM2)
-	bdinfo_print_mhz("cpmfreq", bd->bi_cpmfreq);
-	bdinfo_print_mhz("vco", bd->bi_vco);
-	bdinfo_print_mhz("sccfreq", bd->bi_sccfreq);
-	bdinfo_print_mhz("brgfreq", bd->bi_brgfreq);
-#endif
-
 	/* This is used by m68k and ppc */
 #if defined(CONFIG_SYS_INIT_RAM_ADDR)
 	bdinfo_print_num("sramstart", (ulong)bd->bi_sramstart);