qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 0/6] [for-10.0] hw/uefi: some bugfixes
@ 2025-03-19 14:11 Gerd Hoffmann
  2025-03-19 14:11 ` [PATCH v3 1/6] hw/uefi: flush variable store to disk in post load Gerd Hoffmann
                   ` (5 more replies)
  0 siblings, 6 replies; 11+ messages in thread
From: Gerd Hoffmann @ 2025-03-19 14:11 UTC (permalink / raw)
  To: qemu-devel
  Cc: Bibo Mao, Kashyap Chamarthy, Paolo Bonzini, Song Gao, Jiaxun Yang,
	Daniel P. Berrangé, Alistair Francis,
	Philippe Mathieu-Daudé, qemu-riscv, Daniel Henrique Barboza,
	Liu Zhiwei, Weiwei Li, Gerd Hoffmann, Palmer Dabbelt

v3 changes:
 - rename firmware.json flag, more verbose documentation.
 - add support for riscv and loongarch.

Gerd Hoffmann (6):
  hw/uefi: flush variable store to disk in post load
  hw/uefi: fix error handling in uefi_vars_json_save
  hw/uefi: fix error handling in uefi_vars_json_load
  hw/uefi-vars-sysbus: allow for riscv virt
  hw/uefi-vars-sysbus: allow for loongarch virt
  docs/firmware: add feature flag for host uefi variable store

 hw/loongarch/virt.c        |  2 ++
 hw/riscv/virt.c            |  2 ++
 hw/uefi/var-service-core.c |  1 +
 hw/uefi/var-service-json.c | 24 +++++++++++++++++++-----
 docs/interop/firmware.json | 12 +++++++++++-
 hw/uefi/Kconfig            |  2 +-
 6 files changed, 36 insertions(+), 7 deletions(-)

-- 
2.48.1



^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH v3 1/6] hw/uefi: flush variable store to disk in post load
  2025-03-19 14:11 [PATCH v3 0/6] [for-10.0] hw/uefi: some bugfixes Gerd Hoffmann
@ 2025-03-19 14:11 ` Gerd Hoffmann
  2025-03-19 14:11 ` [PATCH v3 2/6] hw/uefi: fix error handling in uefi_vars_json_save Gerd Hoffmann
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 11+ messages in thread
From: Gerd Hoffmann @ 2025-03-19 14:11 UTC (permalink / raw)
  To: qemu-devel
  Cc: Bibo Mao, Kashyap Chamarthy, Paolo Bonzini, Song Gao, Jiaxun Yang,
	Daniel P. Berrangé, Alistair Francis,
	Philippe Mathieu-Daudé, qemu-riscv, Daniel Henrique Barboza,
	Liu Zhiwei, Weiwei Li, Gerd Hoffmann, Palmer Dabbelt,
	Peter Krempa

Make live migration more robust.  Commit 4c0cfc72b31a ("pflash_cfi01:
write flash contents to bdrv on incoming migration") elaborates in
detail on the motivation.

Cc: Peter Krempa <pkrempa@redhat.com>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
---
 hw/uefi/var-service-core.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/hw/uefi/var-service-core.c b/hw/uefi/var-service-core.c
index 8ed8378ab991..4836a0cb8116 100644
--- a/hw/uefi/var-service-core.c
+++ b/hw/uefi/var-service-core.c
@@ -29,6 +29,7 @@ static int uefi_vars_post_load(void *opaque, int version_id)
     uefi_vars_state *uv = opaque;
 
     uefi_vars_update_storage(uv);
+    uefi_vars_json_save(uv);
     uv->buffer = g_malloc(uv->buf_size);
     return 0;
 }
-- 
2.48.1



^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH v3 2/6] hw/uefi: fix error handling in uefi_vars_json_save
  2025-03-19 14:11 [PATCH v3 0/6] [for-10.0] hw/uefi: some bugfixes Gerd Hoffmann
  2025-03-19 14:11 ` [PATCH v3 1/6] hw/uefi: flush variable store to disk in post load Gerd Hoffmann
@ 2025-03-19 14:11 ` Gerd Hoffmann
  2025-03-19 14:11 ` [PATCH v3 3/6] hw/uefi: fix error handling in uefi_vars_json_load Gerd Hoffmann
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 11+ messages in thread
From: Gerd Hoffmann @ 2025-03-19 14:11 UTC (permalink / raw)
  To: qemu-devel
  Cc: Bibo Mao, Kashyap Chamarthy, Paolo Bonzini, Song Gao, Jiaxun Yang,
	Daniel P. Berrangé, Alistair Francis,
	Philippe Mathieu-Daudé, qemu-riscv, Daniel Henrique Barboza,
	Liu Zhiwei, Weiwei Li, Gerd Hoffmann, Palmer Dabbelt

Catch lseek errors.  Return on errors.
Use autoptr for the GString to simplify cleanup.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
---
 hw/uefi/var-service-json.c | 15 +++++++++++----
 1 file changed, 11 insertions(+), 4 deletions(-)

diff --git a/hw/uefi/var-service-json.c b/hw/uefi/var-service-json.c
index 761082c11fc1..f1c20a6b8c1e 100644
--- a/hw/uefi/var-service-json.c
+++ b/hw/uefi/var-service-json.c
@@ -178,7 +178,7 @@ void uefi_vars_json_init(uefi_vars_state *uv, Error **errp)
 
 void uefi_vars_json_save(uefi_vars_state *uv)
 {
-    GString *gstr;
+    g_autoptr(GString) gstr = NULL;
     int rc;
 
     if (uv->jsonfd == -1) {
@@ -187,18 +187,25 @@ void uefi_vars_json_save(uefi_vars_state *uv)
 
     gstr = uefi_vars_to_json(uv);
 
-    lseek(uv->jsonfd, 0, SEEK_SET);
+    rc = lseek(uv->jsonfd, 0, SEEK_SET);
+    if (rc < 0) {
+        warn_report("%s: lseek error", __func__);
+        return;
+    }
+
     rc = ftruncate(uv->jsonfd, 0);
     if (rc != 0) {
         warn_report("%s: ftruncate error", __func__);
+        return;
     }
+
     rc = write(uv->jsonfd, gstr->str, gstr->len);
     if (rc != gstr->len) {
         warn_report("%s: write error", __func__);
+        return;
     }
+
     fsync(uv->jsonfd);
-
-    g_string_free(gstr, true);
 }
 
 void uefi_vars_json_load(uefi_vars_state *uv, Error **errp)
-- 
2.48.1



^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH v3 3/6] hw/uefi: fix error handling in uefi_vars_json_load
  2025-03-19 14:11 [PATCH v3 0/6] [for-10.0] hw/uefi: some bugfixes Gerd Hoffmann
  2025-03-19 14:11 ` [PATCH v3 1/6] hw/uefi: flush variable store to disk in post load Gerd Hoffmann
  2025-03-19 14:11 ` [PATCH v3 2/6] hw/uefi: fix error handling in uefi_vars_json_save Gerd Hoffmann
@ 2025-03-19 14:11 ` Gerd Hoffmann
  2025-03-19 14:11 ` [PATCH v3 4/6] hw/uefi-vars-sysbus: allow for riscv virt Gerd Hoffmann
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 11+ messages in thread
From: Gerd Hoffmann @ 2025-03-19 14:11 UTC (permalink / raw)
  To: qemu-devel
  Cc: Bibo Mao, Kashyap Chamarthy, Paolo Bonzini, Song Gao, Jiaxun Yang,
	Daniel P. Berrangé, Alistair Francis,
	Philippe Mathieu-Daudé, qemu-riscv, Daniel Henrique Barboza,
	Liu Zhiwei, Weiwei Li, Gerd Hoffmann, Palmer Dabbelt

Catch lseek errors.  Return on read errors.

Fixes: CID 1593154
Fixes: CID 1593157
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
---
 hw/uefi/var-service-json.c | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/hw/uefi/var-service-json.c b/hw/uefi/var-service-json.c
index f1c20a6b8c1e..ad3462cd1557 100644
--- a/hw/uefi/var-service-json.c
+++ b/hw/uefi/var-service-json.c
@@ -214,7 +214,7 @@ void uefi_vars_json_load(uefi_vars_state *uv, Error **errp)
     QObject *qobj;
     Visitor *v;
     char *str;
-    size_t len;
+    ssize_t len;
     int rc;
 
     if (uv->jsonfd == -1) {
@@ -222,7 +222,12 @@ void uefi_vars_json_load(uefi_vars_state *uv, Error **errp)
     }
 
     len = lseek(uv->jsonfd, 0, SEEK_END);
+    if (len < 0) {
+        warn_report("%s: lseek error", __func__);
+        return;
+    }
     if (len == 0) {
+        /* empty file */
         return;
     }
 
@@ -231,6 +236,8 @@ void uefi_vars_json_load(uefi_vars_state *uv, Error **errp)
     rc = read(uv->jsonfd, str, len);
     if (rc != len) {
         warn_report("%s: read error", __func__);
+        g_free(str);
+        return;
     }
     str[len] = 0;
 
-- 
2.48.1



^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH v3 4/6] hw/uefi-vars-sysbus: allow for riscv virt
  2025-03-19 14:11 [PATCH v3 0/6] [for-10.0] hw/uefi: some bugfixes Gerd Hoffmann
                   ` (2 preceding siblings ...)
  2025-03-19 14:11 ` [PATCH v3 3/6] hw/uefi: fix error handling in uefi_vars_json_load Gerd Hoffmann
@ 2025-03-19 14:11 ` Gerd Hoffmann
  2025-03-19 14:22   ` Daniel P. Berrangé
  2025-03-19 15:04   ` Daniel Henrique Barboza
  2025-03-19 14:11 ` [PATCH v3 5/6] hw/uefi-vars-sysbus: allow for loongarch virt Gerd Hoffmann
  2025-03-19 14:11 ` [PATCH v3 6/6] docs/firmware: add feature flag for host uefi variable store Gerd Hoffmann
  5 siblings, 2 replies; 11+ messages in thread
From: Gerd Hoffmann @ 2025-03-19 14:11 UTC (permalink / raw)
  To: qemu-devel
  Cc: Bibo Mao, Kashyap Chamarthy, Paolo Bonzini, Song Gao, Jiaxun Yang,
	Daniel P. Berrangé, Alistair Francis,
	Philippe Mathieu-Daudé, qemu-riscv, Daniel Henrique Barboza,
	Liu Zhiwei, Weiwei Li, Gerd Hoffmann, Palmer Dabbelt

Allow the device being added to riscv virt VMs.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
---
 hw/riscv/virt.c | 2 ++
 hw/uefi/Kconfig | 2 +-
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/hw/riscv/virt.c b/hw/riscv/virt.c
index dae46f4733cd..e517002fdfc7 100644
--- a/hw/riscv/virt.c
+++ b/hw/riscv/virt.c
@@ -57,6 +57,7 @@
 #include "hw/acpi/aml-build.h"
 #include "qapi/qapi-visit-common.h"
 #include "hw/virtio/virtio-iommu.h"
+#include "hw/uefi/var-service-api.h"
 
 /* KVM AIA only supports APLIC MSI. APLIC Wired is always emulated by QEMU. */
 static bool virt_use_kvm_aia_aplic_imsic(RISCVVirtAIAType aia_type)
@@ -1935,6 +1936,7 @@ static void virt_machine_class_init(ObjectClass *oc, void *data)
     hc->plug = virt_machine_device_plug_cb;
 
     machine_class_allow_dynamic_sysbus_dev(mc, TYPE_RAMFB_DEVICE);
+    machine_class_allow_dynamic_sysbus_dev(mc, TYPE_UEFI_VARS_SYSBUS);
 #ifdef CONFIG_TPM
     machine_class_allow_dynamic_sysbus_dev(mc, TYPE_TPM_TIS_SYSBUS);
 #endif
diff --git a/hw/uefi/Kconfig b/hw/uefi/Kconfig
index ca6c2bc46a96..f139008b632b 100644
--- a/hw/uefi/Kconfig
+++ b/hw/uefi/Kconfig
@@ -1,3 +1,3 @@
 config UEFI_VARS
 	bool
-        default y if X86_64 || AARCH64
+        default y if X86_64 || AARCH64 || RISCV64
-- 
2.48.1



^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH v3 5/6] hw/uefi-vars-sysbus: allow for loongarch virt
  2025-03-19 14:11 [PATCH v3 0/6] [for-10.0] hw/uefi: some bugfixes Gerd Hoffmann
                   ` (3 preceding siblings ...)
  2025-03-19 14:11 ` [PATCH v3 4/6] hw/uefi-vars-sysbus: allow for riscv virt Gerd Hoffmann
@ 2025-03-19 14:11 ` Gerd Hoffmann
  2025-03-19 14:22   ` Daniel P. Berrangé
  2025-03-19 14:11 ` [PATCH v3 6/6] docs/firmware: add feature flag for host uefi variable store Gerd Hoffmann
  5 siblings, 1 reply; 11+ messages in thread
From: Gerd Hoffmann @ 2025-03-19 14:11 UTC (permalink / raw)
  To: qemu-devel
  Cc: Bibo Mao, Kashyap Chamarthy, Paolo Bonzini, Song Gao, Jiaxun Yang,
	Daniel P. Berrangé, Alistair Francis,
	Philippe Mathieu-Daudé, qemu-riscv, Daniel Henrique Barboza,
	Liu Zhiwei, Weiwei Li, Gerd Hoffmann, Palmer Dabbelt

Allow the device being added to loongarch virt VMs.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
---
 hw/loongarch/virt.c | 2 ++
 hw/uefi/Kconfig     | 2 +-
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/hw/loongarch/virt.c b/hw/loongarch/virt.c
index a5840ff96857..b6f5f6a3b546 100644
--- a/hw/loongarch/virt.c
+++ b/hw/loongarch/virt.c
@@ -38,6 +38,7 @@
 #include "hw/mem/nvdimm.h"
 #include "hw/platform-bus.h"
 #include "hw/display/ramfb.h"
+#include "hw/uefi/var-service-api.h"
 #include "hw/mem/pc-dimm.h"
 #include "system/tpm.h"
 #include "system/block-backend.h"
@@ -1207,6 +1208,7 @@ static void virt_class_init(ObjectClass *oc, void *data)
     object_class_property_set_description(oc, "v-eiointc",
                             "Enable Virt Extend I/O Interrupt Controller.");
     machine_class_allow_dynamic_sysbus_dev(mc, TYPE_RAMFB_DEVICE);
+    machine_class_allow_dynamic_sysbus_dev(mc, TYPE_UEFI_VARS_SYSBUS);
 #ifdef CONFIG_TPM
     machine_class_allow_dynamic_sysbus_dev(mc, TYPE_TPM_TIS_SYSBUS);
 #endif
diff --git a/hw/uefi/Kconfig b/hw/uefi/Kconfig
index f139008b632b..b55529fca137 100644
--- a/hw/uefi/Kconfig
+++ b/hw/uefi/Kconfig
@@ -1,3 +1,3 @@
 config UEFI_VARS
 	bool
-        default y if X86_64 || AARCH64 || RISCV64
+        default y if X86_64 || AARCH64 || RISCV64 || LOONGARCH64
\ No newline at end of file
-- 
2.48.1



^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH v3 6/6] docs/firmware: add feature flag for host uefi variable store
  2025-03-19 14:11 [PATCH v3 0/6] [for-10.0] hw/uefi: some bugfixes Gerd Hoffmann
                   ` (4 preceding siblings ...)
  2025-03-19 14:11 ` [PATCH v3 5/6] hw/uefi-vars-sysbus: allow for loongarch virt Gerd Hoffmann
@ 2025-03-19 14:11 ` Gerd Hoffmann
  2025-03-19 14:21   ` Daniel P. Berrangé
  5 siblings, 1 reply; 11+ messages in thread
From: Gerd Hoffmann @ 2025-03-19 14:11 UTC (permalink / raw)
  To: qemu-devel
  Cc: Bibo Mao, Kashyap Chamarthy, Paolo Bonzini, Song Gao, Jiaxun Yang,
	Daniel P. Berrangé, Alistair Francis,
	Philippe Mathieu-Daudé, qemu-riscv, Daniel Henrique Barboza,
	Liu Zhiwei, Weiwei Li, Gerd Hoffmann, Palmer Dabbelt

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
---
 docs/interop/firmware.json | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/docs/interop/firmware.json b/docs/interop/firmware.json
index 57f55f6c5455..745d21d82232 100644
--- a/docs/interop/firmware.json
+++ b/docs/interop/firmware.json
@@ -214,13 +214,23 @@
 #                  PL011 UART. @verbose-static is mutually exclusive
 #                  with @verbose-dynamic.
 #
+# @host-uefi-vars: The firmware expects the host to provide an uefi
+#                  variable store.  qemu supports that via
+#                  "uefi-vars-sysbus" (aarch64, riscv64, loongarch64)
+#                  or "uefi-vars-x64" (x86_64) devices.  The firmware
+#                  will not use flash for nvram.  When loading the
+#                  firmware into flash the 'stateless' setup should be
+#                  used.  It is recommened to load the firmware into
+#                  memory though.
+#
 # Since: 3.0
 ##
 { 'enum' : 'FirmwareFeature',
   'data' : [ 'acpi-s3', 'acpi-s4',
              'amd-sev', 'amd-sev-es', 'amd-sev-snp',
              'intel-tdx',
-             'enrolled-keys', 'requires-smm', 'secure-boot',
+             'enrolled-keys', 'requires-smm',
+             'secure-boot', 'host-uefi-vars',
              'verbose-dynamic', 'verbose-static' ] }
 
 ##
-- 
2.48.1



^ permalink raw reply related	[flat|nested] 11+ messages in thread

* Re: [PATCH v3 6/6] docs/firmware: add feature flag for host uefi variable store
  2025-03-19 14:11 ` [PATCH v3 6/6] docs/firmware: add feature flag for host uefi variable store Gerd Hoffmann
@ 2025-03-19 14:21   ` Daniel P. Berrangé
  0 siblings, 0 replies; 11+ messages in thread
From: Daniel P. Berrangé @ 2025-03-19 14:21 UTC (permalink / raw)
  To: Gerd Hoffmann
  Cc: qemu-devel, Bibo Mao, Kashyap Chamarthy, Paolo Bonzini, Song Gao,
	Jiaxun Yang, Alistair Francis, Philippe Mathieu-Daudé,
	qemu-riscv, Daniel Henrique Barboza, Liu Zhiwei, Weiwei Li,
	Palmer Dabbelt

On Wed, Mar 19, 2025 at 03:11:58PM +0100, Gerd Hoffmann wrote:
> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
> ---
>  docs/interop/firmware.json | 12 +++++++++++-
>  1 file changed, 11 insertions(+), 1 deletion(-)

Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>


With regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|



^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH v3 4/6] hw/uefi-vars-sysbus: allow for riscv virt
  2025-03-19 14:11 ` [PATCH v3 4/6] hw/uefi-vars-sysbus: allow for riscv virt Gerd Hoffmann
@ 2025-03-19 14:22   ` Daniel P. Berrangé
  2025-03-19 15:04   ` Daniel Henrique Barboza
  1 sibling, 0 replies; 11+ messages in thread
From: Daniel P. Berrangé @ 2025-03-19 14:22 UTC (permalink / raw)
  To: Gerd Hoffmann
  Cc: qemu-devel, Bibo Mao, Kashyap Chamarthy, Paolo Bonzini, Song Gao,
	Jiaxun Yang, Alistair Francis, Philippe Mathieu-Daudé,
	qemu-riscv, Daniel Henrique Barboza, Liu Zhiwei, Weiwei Li,
	Palmer Dabbelt

On Wed, Mar 19, 2025 at 03:11:56PM +0100, Gerd Hoffmann wrote:
> Allow the device being added to riscv virt VMs.
> 
> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
> ---
>  hw/riscv/virt.c | 2 ++
>  hw/uefi/Kconfig | 2 +-
>  2 files changed, 3 insertions(+), 1 deletion(-)

Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>


With regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|



^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH v3 5/6] hw/uefi-vars-sysbus: allow for loongarch virt
  2025-03-19 14:11 ` [PATCH v3 5/6] hw/uefi-vars-sysbus: allow for loongarch virt Gerd Hoffmann
@ 2025-03-19 14:22   ` Daniel P. Berrangé
  0 siblings, 0 replies; 11+ messages in thread
From: Daniel P. Berrangé @ 2025-03-19 14:22 UTC (permalink / raw)
  To: Gerd Hoffmann
  Cc: qemu-devel, Bibo Mao, Kashyap Chamarthy, Paolo Bonzini, Song Gao,
	Jiaxun Yang, Alistair Francis, Philippe Mathieu-Daudé,
	qemu-riscv, Daniel Henrique Barboza, Liu Zhiwei, Weiwei Li,
	Palmer Dabbelt

On Wed, Mar 19, 2025 at 03:11:57PM +0100, Gerd Hoffmann wrote:
> Allow the device being added to loongarch virt VMs.
> 
> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
> ---
>  hw/loongarch/virt.c | 2 ++
>  hw/uefi/Kconfig     | 2 +-
>  2 files changed, 3 insertions(+), 1 deletion(-)

Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>


> diff --git a/hw/uefi/Kconfig b/hw/uefi/Kconfig
> index f139008b632b..b55529fca137 100644
> --- a/hw/uefi/Kconfig
> +++ b/hw/uefi/Kconfig
> @@ -1,3 +1,3 @@
>  config UEFI_VARS
>  	bool
> -        default y if X86_64 || AARCH64 || RISCV64
> +        default y if X86_64 || AARCH64 || RISCV64 || LOONGARCH64
> \ No newline at end of file

Could fix the missing newline when sending a PULL


With regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|



^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH v3 4/6] hw/uefi-vars-sysbus: allow for riscv virt
  2025-03-19 14:11 ` [PATCH v3 4/6] hw/uefi-vars-sysbus: allow for riscv virt Gerd Hoffmann
  2025-03-19 14:22   ` Daniel P. Berrangé
@ 2025-03-19 15:04   ` Daniel Henrique Barboza
  1 sibling, 0 replies; 11+ messages in thread
From: Daniel Henrique Barboza @ 2025-03-19 15:04 UTC (permalink / raw)
  To: Gerd Hoffmann, qemu-devel
  Cc: Bibo Mao, Kashyap Chamarthy, Paolo Bonzini, Song Gao, Jiaxun Yang,
	Daniel P. Berrangé, Alistair Francis,
	Philippe Mathieu-Daudé, qemu-riscv, Liu Zhiwei, Weiwei Li,
	Palmer Dabbelt



On 3/19/25 11:11 AM, Gerd Hoffmann wrote:
> Allow the device being added to riscv virt VMs.
> 
> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
> ---

Reviewed-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>

>   hw/riscv/virt.c | 2 ++
>   hw/uefi/Kconfig | 2 +-
>   2 files changed, 3 insertions(+), 1 deletion(-)
> 
> diff --git a/hw/riscv/virt.c b/hw/riscv/virt.c
> index dae46f4733cd..e517002fdfc7 100644
> --- a/hw/riscv/virt.c
> +++ b/hw/riscv/virt.c
> @@ -57,6 +57,7 @@
>   #include "hw/acpi/aml-build.h"
>   #include "qapi/qapi-visit-common.h"
>   #include "hw/virtio/virtio-iommu.h"
> +#include "hw/uefi/var-service-api.h"
>   
>   /* KVM AIA only supports APLIC MSI. APLIC Wired is always emulated by QEMU. */
>   static bool virt_use_kvm_aia_aplic_imsic(RISCVVirtAIAType aia_type)
> @@ -1935,6 +1936,7 @@ static void virt_machine_class_init(ObjectClass *oc, void *data)
>       hc->plug = virt_machine_device_plug_cb;
>   
>       machine_class_allow_dynamic_sysbus_dev(mc, TYPE_RAMFB_DEVICE);
> +    machine_class_allow_dynamic_sysbus_dev(mc, TYPE_UEFI_VARS_SYSBUS);
>   #ifdef CONFIG_TPM
>       machine_class_allow_dynamic_sysbus_dev(mc, TYPE_TPM_TIS_SYSBUS);
>   #endif
> diff --git a/hw/uefi/Kconfig b/hw/uefi/Kconfig
> index ca6c2bc46a96..f139008b632b 100644
> --- a/hw/uefi/Kconfig
> +++ b/hw/uefi/Kconfig
> @@ -1,3 +1,3 @@
>   config UEFI_VARS
>   	bool
> -        default y if X86_64 || AARCH64
> +        default y if X86_64 || AARCH64 || RISCV64



^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2025-03-19 15:05 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-03-19 14:11 [PATCH v3 0/6] [for-10.0] hw/uefi: some bugfixes Gerd Hoffmann
2025-03-19 14:11 ` [PATCH v3 1/6] hw/uefi: flush variable store to disk in post load Gerd Hoffmann
2025-03-19 14:11 ` [PATCH v3 2/6] hw/uefi: fix error handling in uefi_vars_json_save Gerd Hoffmann
2025-03-19 14:11 ` [PATCH v3 3/6] hw/uefi: fix error handling in uefi_vars_json_load Gerd Hoffmann
2025-03-19 14:11 ` [PATCH v3 4/6] hw/uefi-vars-sysbus: allow for riscv virt Gerd Hoffmann
2025-03-19 14:22   ` Daniel P. Berrangé
2025-03-19 15:04   ` Daniel Henrique Barboza
2025-03-19 14:11 ` [PATCH v3 5/6] hw/uefi-vars-sysbus: allow for loongarch virt Gerd Hoffmann
2025-03-19 14:22   ` Daniel P. Berrangé
2025-03-19 14:11 ` [PATCH v3 6/6] docs/firmware: add feature flag for host uefi variable store Gerd Hoffmann
2025-03-19 14:21   ` Daniel P. Berrangé

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).