diff mbox series

[4/4] microblaze: add arch_print_bdinfo() implementation

Message ID 20220825064131.673958-4-ovpanait@gmail.com
State Superseded
Delegated to: Michal Simek
Headers show
Series [1/4] microblaze: drop CONFIG_SYS_INIT_RAM_ADDR and CONFIG_SYS_INIT_RAM_SIZE | expand

Commit Message

Ovidiu Panait Aug. 25, 2022, 6:41 a.m. UTC
Allow bdinfo command to print icache/dcache information:
U-Boot-mONStR> bdinfo
boot_params = 0x00000000
DRAM bank   = 0x00000000
-> start    = 0x04000000
-> size     = 0x04000000
flashstart  = 0x00000000
flashsize   = 0x00000000
flashoffset = 0x00000000
baudrate    = 9600 bps
relocaddr   = 0x07f76000
reloc off   = 0x02f76000
Build       = 32-bit
current eth = unknown
ethaddr     = (not set)
IP addr     = <NULL>
fdt_blob    = 0x07fec7e0
new_fdt     = 0x00000000
fdt_size    = 0x00000000
lmb_dump_all:
 memory.cnt  = 0x1
 memory[0]      [0x4000000-0x7ffffff], 0x04000000 bytes flags: 0
 reserved.cnt  = 0x1
 reserved[0]    [0x7e94b8c-0x7ffffff], 0x0016b474 bytes flags: 0
devicetree  = embed
icache      = 32 KiB
icache line = 4 Bytes
dcache      = 32 KiB
dcache line = 4 Bytes

Signed-off-by: Ovidiu Panait <ovpanait@gmail.com>
---

 arch/microblaze/lib/Makefile |  1 +
 arch/microblaze/lib/bdinfo.c | 24 ++++++++++++++++++++++++
 2 files changed, 25 insertions(+)
 create mode 100644 arch/microblaze/lib/bdinfo.c

Comments

Michal Simek Aug. 25, 2022, 9:04 a.m. UTC | #1
On 8/25/22 08:41, Ovidiu Panait wrote:
> Allow bdinfo command to print icache/dcache information:
> U-Boot-mONStR> bdinfo
> boot_params = 0x00000000
> DRAM bank   = 0x00000000
> -> start    = 0x04000000
> -> size     = 0x04000000
> flashstart  = 0x00000000
> flashsize   = 0x00000000
> flashoffset = 0x00000000
> baudrate    = 9600 bps
> relocaddr   = 0x07f76000
> reloc off   = 0x02f76000
> Build       = 32-bit
> current eth = unknown
> ethaddr     = (not set)
> IP addr     = <NULL>
> fdt_blob    = 0x07fec7e0
> new_fdt     = 0x00000000
> fdt_size    = 0x00000000
> lmb_dump_all:
>   memory.cnt  = 0x1
>   memory[0]      [0x4000000-0x7ffffff], 0x04000000 bytes flags: 0
>   reserved.cnt  = 0x1
>   reserved[0]    [0x7e94b8c-0x7ffffff], 0x0016b474 bytes flags: 0
> devicetree  = embed
> icache      = 32 KiB
> icache line = 4 Bytes
> dcache      = 32 KiB
> dcache line = 4 Bytes
> 
> Signed-off-by: Ovidiu Panait <ovpanait@gmail.com>
> ---
> 
>   arch/microblaze/lib/Makefile |  1 +
>   arch/microblaze/lib/bdinfo.c | 24 ++++++++++++++++++++++++
>   2 files changed, 25 insertions(+)
>   create mode 100644 arch/microblaze/lib/bdinfo.c
> 
> diff --git a/arch/microblaze/lib/Makefile b/arch/microblaze/lib/Makefile
> index 05f447abba..dfd8135f4f 100644
> --- a/arch/microblaze/lib/Makefile
> +++ b/arch/microblaze/lib/Makefile
> @@ -4,4 +4,5 @@
>   # Wolfgang Denk, DENX Software Engineering, wd@denx.de.
>   
>   obj-$(CONFIG_CMD_BOOTM) += bootm.o
> +obj-$(CONFIG_CMD_BDI) += bdinfo.o
>   obj-y	+= muldi3.o
> diff --git a/arch/microblaze/lib/bdinfo.c b/arch/microblaze/lib/bdinfo.c
> new file mode 100644
> index 0000000000..41b7a216a4
> --- /dev/null
> +++ b/arch/microblaze/lib/bdinfo.c
> @@ -0,0 +1,24 @@
> +// SPDX-License-Identifier: GPL-2.0+
> +/*
> + * Copyright (C) 2022, Ovidiu Panait <ovpanait@gmail.com>
> + */
> +#include <init.h>
> +#include <asm/cpuinfo.h>
> +#include <asm/global_data.h>
> +
> +DECLARE_GLOBAL_DATA_PTR;

remove this line. You are not using gd in this function.

> +
> +void arch_print_bdinfo(void)
> +{
> +	struct microblaze_cpuinfo *ci = gd_cpuinfo();
> +
> +	if (ci->icache_size) {
> +		bdinfo_print_size("icache", ci->icache_size);
> +		bdinfo_print_size("icache line", ci->icache_line_length);
> +	}
> +
> +	if (ci->dcache_size) {
> +		bdinfo_print_size("dcache", ci->dcache_size);
> +		bdinfo_print_size("dcache line", ci->dcache_line_length);
> +	}
> +}

The rest looks good to me.

M
diff mbox series

Patch

diff --git a/arch/microblaze/lib/Makefile b/arch/microblaze/lib/Makefile
index 05f447abba..dfd8135f4f 100644
--- a/arch/microblaze/lib/Makefile
+++ b/arch/microblaze/lib/Makefile
@@ -4,4 +4,5 @@ 
 # Wolfgang Denk, DENX Software Engineering, wd@denx.de.
 
 obj-$(CONFIG_CMD_BOOTM) += bootm.o
+obj-$(CONFIG_CMD_BDI) += bdinfo.o
 obj-y	+= muldi3.o
diff --git a/arch/microblaze/lib/bdinfo.c b/arch/microblaze/lib/bdinfo.c
new file mode 100644
index 0000000000..41b7a216a4
--- /dev/null
+++ b/arch/microblaze/lib/bdinfo.c
@@ -0,0 +1,24 @@ 
+// SPDX-License-Identifier: GPL-2.0+
+/*
+ * Copyright (C) 2022, Ovidiu Panait <ovpanait@gmail.com>
+ */
+#include <init.h>
+#include <asm/cpuinfo.h>
+#include <asm/global_data.h>
+
+DECLARE_GLOBAL_DATA_PTR;
+
+void arch_print_bdinfo(void)
+{
+	struct microblaze_cpuinfo *ci = gd_cpuinfo();
+
+	if (ci->icache_size) {
+		bdinfo_print_size("icache", ci->icache_size);
+		bdinfo_print_size("icache line", ci->icache_line_length);
+	}
+
+	if (ci->dcache_size) {
+		bdinfo_print_size("dcache", ci->dcache_size);
+		bdinfo_print_size("dcache line", ci->dcache_line_length);
+	}
+}