[PATCH 14/38] qfw: Show the file address if available

Mark Kettenis mark.kettenis at xs4all.nl
Fri Mar 31 11:44:09 CEST 2023


> Date: Fri, 31 Mar 2023 00:31:17 +0200
> From: Heinrich Schuchardt <xypron.glpk at gmx.de>
> 
> Am 30. März 2023 23:32:03 MESZ schrieb Simon Glass <sjg at chromium.org>:
> >Some files have an associated address. Show this with the 'qfw list'
> >command so that it is possible to dump the data.
> >
> >Signed-off-by: Simon Glass <sjg at chromium.org>
> >---
> >
> > cmd/qfw.c             |  2 +-
> > doc/usage/cmd/qfw.rst | 28 ++++++++++++++++------------
> > 2 files changed, 17 insertions(+), 13 deletions(-)
> >
> >diff --git a/cmd/qfw.c b/cmd/qfw.c
> >index ae3c6a7a84e9..d6ecfa60d5a7 100644
> >--- a/cmd/qfw.c
> >+++ b/cmd/qfw.c
> >@@ -26,7 +26,7 @@ static int qemu_fwcfg_cmd_list_firmware(void)
> > 	for (file = qfw_file_iter_init(qfw_dev, &iter);
> > 	     !qfw_file_iter_end(&iter);
> > 	     file = qfw_file_iter_next(&iter)) {
> >-		printf("%-56s\n", file->cfg.name);
> >+		printf("%08lx %-56s\n", file->addr, file->cfg.name);
> 
> Are the tables always in the lower 4GiB on all architectures
> (riscv64, arm64, x86)?

Some arm64 doesn't even have memory in the lower 4GiB of memory.  Not
sure if qemu emulates such hardware though.

> > 	}
> > 
> > 	return 0;
> >diff --git a/doc/usage/cmd/qfw.rst b/doc/usage/cmd/qfw.rst
> >index cc0e27c27790..76d74278a213 100644
> >--- a/doc/usage/cmd/qfw.rst
> >+++ b/doc/usage/cmd/qfw.rst
> >@@ -11,6 +11,7 @@ Synopsis
> >     qfw list
> >     qfw cpus
> >     qfw load [kernel_addr [initrd_addr]]
> >+    qfw list
> > 
> > Description
> > -----------
> >@@ -41,18 +42,21 @@ QEMU firmware files are listed via the *qfw list* command:
> > ::
> > 
> >     => qfw list
> >-    etc/boot-fail-wait
> >-    etc/smbios/smbios-tables
> >-    etc/smbios/smbios-anchor
> >-    etc/e820
> >-    genroms/kvmvapic.bin
> >-    genroms/linuxboot.bin
> >-    etc/system-states
> >-    etc/acpi/tables
> >-    etc/table-loader
> >-    etc/tpm/log
> >-    etc/acpi/rsdp
> >-    bootorder
> >+    00000000 bios-geometry
> >+    00000000 bootorder
> >+    000f0060 etc/acpi/rsdp
> >+    bed14040 etc/acpi/tables
> >+    00000000 etc/boot-fail-wait
> >+    00000000 etc/e820
> >+    00000000 etc/smbios/smbios-anchor
> >+    00000000 etc/smbios/smbios-tables
> >+    00000000 etc/system-states
> >+    00000000 etc/table-loader
> >+    00000000 etc/tpm/log
> >+    00000000 genroms/kvmvapic.bin
> >+
> >+Where an address is shown, it indicates where the data is available for
> >+inspection, e.g. using the :doc:`md`.
> > 
> > The available CPUs can be shown via the *qfw cpus* command:
> > 
> 


More information about the U-Boot mailing list