Commit fe5a14313e for qemu.org
commit fe5a14313e6dd6aaef37a3294232c155e0b3455b
Author: Marc-André Lureau <marcandre.lureau@redhat.com>
Date: Sun Nov 1 21:17:12 2026 +0100
qdev: convert PropertyInfo definitions to use qapi_type
Add a .qapi_type pointer to the remaining PropertyInfo definitions
outside hw/.
After this patch, all PropertyInfo definitions have .qapi_type set,
except qdev_prop_link (uses .create) and qdev_prop_array (left for
later).
Reviewed-by: Stefan Berger <stefanb@linux.ibm.com>
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Message-ID: <20261101201717.3911097-52-armbru@redhat.com>
[Trivial conflict with commit b8bd33422586 (migration: forbid
snapshots under Xen resolved]
diff --git a/backends/spdm-socket.c b/backends/spdm-socket.c
index 826efc276d..e1d5626062 100644
--- a/backends/spdm-socket.c
+++ b/backends/spdm-socket.c
@@ -17,6 +17,7 @@
#include "hw/core/qdev-properties.h"
#include "hw/core/qdev-properties-system.h"
#include "hw/core/qdev-prop-internal.h"
+#include "qapi/qapi-type-infos-sockets.h"
static bool read_bytes(const int socket, uint8_t *buffer,
size_t number_of_bytes)
@@ -254,8 +255,8 @@ void spdm_socket_close(const int socket, SpdmTransportType transport_type)
const PropertyInfo qdev_prop_spdm_trans = {
.type = "SpdmTransportType",
+ .qapi_type = &SpdmTransportType_type_info,
.description = "Spdm Transport, doe/nvme/mctp/scsi/unspecified",
- .enum_table = &SpdmTransportType_lookup,
.get = qdev_propinfo_get_enum,
.set = qdev_propinfo_set_enum,
.set_default_value = qdev_propinfo_set_default_value_enum,
diff --git a/backends/tpm/tpm_util.c b/backends/tpm/tpm_util.c
index 7019f7fd3e..e52f342933 100644
--- a/backends/tpm/tpm_util.c
+++ b/backends/tpm/tpm_util.c
@@ -30,6 +30,7 @@
#include "system/tpm_backend.h"
#include "system/tpm_util.h"
#include "trace.h"
+#include "qapi/qapi-builtin-type-infos.h"
/* tpm backend property */
@@ -78,6 +79,7 @@ static void release_tpm(Object *obj, const char *name, void *opaque)
const PropertyInfo qdev_prop_tpm = {
.type = "str",
+ .qapi_type = &str_type_info,
.description = "ID of a tpm to use as a backend",
.get = get_tpm,
.set = set_tpm,
diff --git a/migration/options.c b/migration/options.c
index 0b7f393492..bd40394aa7 100644
--- a/migration/options.c
+++ b/migration/options.c
@@ -19,7 +19,9 @@
#include "qapi/clone-visitor.h"
#include "qapi/dealloc-visitor.h"
#include "qapi/error.h"
+#include "qapi/qapi-builtin-type-infos.h"
#include "qapi/qapi-commands-migration.h"
+#include "qapi/qapi-type-infos-common.h"
#include "qapi/qapi-visit-migration.h"
#include "qapi/qmp/qerror.h"
#include "qapi/qobject-input-visitor.h"
@@ -296,6 +298,7 @@ static void set_default_value_tls_opt(ObjectProperty *op, const Property *prop)
*/
const PropertyInfo qdev_prop_StrOrNull = {
.type = "StrOrNull",
+ .qapi_type = &StrOrNull_type_info,
.get = get_StrOrNull,
.set = set_StrOrNull,
.release = release_StrOrNull,
diff --git a/target/sparc/cpu.c b/target/sparc/cpu.c
index 28ae629d50..7729413698 100644
--- a/target/sparc/cpu.c
+++ b/target/sparc/cpu.c
@@ -30,6 +30,7 @@
#include "tcg/tcg.h"
#include "fpu/softfloat.h"
#include "target/sparc/translate.h"
+#include "qapi/qapi-builtin-type-infos.h"
//#define DEBUG_FEATURES
@@ -950,6 +951,7 @@ static void sparc_set_nwindows(Object *obj, Visitor *v, const char *name,
static const PropertyInfo qdev_prop_nwindows = {
.type = "int",
+ .qapi_type = &int_type_info,
.description = "Number of register windows",
.get = sparc_get_nwindows,
.set = sparc_set_nwindows,