@samitouri / QOSamiQemu / commits / 55e25958aa

hw/vfio/pci-quirks.c: remove CONFIG_VFIO_IGD

Add stubs for needed functions. vfio_pci_hot_reset_info must be forwarded declared on non linux platforms: In file included from ../hw/vfio/igd-stubs.c:9: ../hw/vfio/pci.h:265:44: error: 'struct vfio_pci_hot_reset_info' declared inside parameter list will not be visible outside of this definition or declaration [-Werror] 265 | struct vfio_pci_hot_reset_info **info_p); | Reviewed-by: Cédric Le Goater <clg@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Signed-off-by: Pierrick Bouvier <pierrick.bouvier@linaro.org> Tested-by: Cédric Le Goater <clg@redhat.com> Tested-by: Philippe Mathieu-Daudé <philmd@linaro.org> Link: https://lore.kernel.org/qemu-devel/20260318174733.1717643-4-pierrick.bouvier@linaro.org Signed-off-by: Cédric Le Goater <clg@redhat.com>

Pierrick Bouvier committed Mar 18, 2026 at 10:47 UTC 55e25958aa1a54cbbb675c12c538826c2679f062
4 files changed +23 -5
hw/vfio/igd-stubs.c new
+20
@@ -0,0 +1,20 @@
1 +/*
2 + * IGD device quirks stubs
3 + *
4 + * SPDX-License-Identifier: GPL-2.0-or-later
5 + */
6 +
7 +#include "qemu/osdep.h"
8 +#include "qapi/qmp/qerror.h"
9 +#include "pci.h"
10 +#include "pci-quirks.h"
11 +
12 +void vfio_probe_igd_bar0_quirk(VFIOPCIDevice *vdev, int nr)
13 +{
14 + return;
15 +}
16 +
17 +bool vfio_probe_igd_config_quirk(VFIOPCIDevice *vdev, Error **errp)
18 +{
19 + return true;
20 +}
hw/vfio/meson.build
+1
@@ -17,6 +17,7 @@ vfio_ss.add(when: 'CONFIG_VFIO_PCI', if_true: files(
17 vfio_ss.add(when: 'CONFIG_VFIO_CCW', if_true: files('ccw.c'))
18 vfio_ss.add(when: 'CONFIG_VFIO_AP', if_true: files('ap.c'))
19 vfio_ss.add(when: 'CONFIG_VFIO_IGD', if_true: files('igd.c'))
20 +stub_ss.add(files('igd-stubs.c'))
21
22 specific_ss.add_all(when: 'CONFIG_VFIO', if_true: vfio_ss)
23
hw/vfio/pci-quirks.c
-5
@@ -11,7 +11,6 @@
11 */
12
13 #include "qemu/osdep.h"
14 -#include CONFIG_DEVICES
14 #include "exec/memop.h"
15 #include "qemu/units.h"
16 #include "qemu/log.h"
@@ -1128,11 +1127,9 @@ static void vfio_probe_rtl8168_bar2_quirk(VFIOPCIDevice *vdev, int nr)
1127 */
1128 bool vfio_config_quirk_setup(VFIOPCIDevice *vdev, Error **errp)
1129 {
1131 -#ifdef CONFIG_VFIO_IGD
1130 if (!vfio_probe_igd_config_quirk(vdev, errp)) {
1131 return false;
1132 }
1135 -#endif
1133 return true;
1134 }
1135
@@ -1179,9 +1176,7 @@ void vfio_bar_quirk_setup(VFIOPCIDevice *vdev, int nr)
1176 vfio_probe_nvidia_bar5_quirk(vdev, nr);
1177 vfio_probe_nvidia_bar0_quirk(vdev, nr);
1178 vfio_probe_rtl8168_bar2_quirk(vdev, nr);
1182 -#ifdef CONFIG_VFIO_IGD
1179 vfio_probe_igd_bar0_quirk(vdev, nr);
1184 -#endif
1180 }
1181
1182 void vfio_bar_quirk_exit(VFIOPCIDevice *vdev, int nr)
hw/vfio/pci.h
+2
@@ -258,6 +258,8 @@ bool vfio_probe_igd_config_quirk(VFIOPCIDevice *vdev, Error **errp);
258
259 extern const PropertyInfo qdev_prop_nv_gpudirect_clique;
260
261 +struct vfio_pci_hot_reset_info;
262 +
263 void vfio_pci_pre_reset(VFIOPCIDevice *vdev);
264 void vfio_pci_post_reset(VFIOPCIDevice *vdev);
265 bool vfio_pci_host_match(PCIHostDeviceAddress *addr, const char *name);