]> www.infradead.org Git - users/dwmw2/qemu.git/commitdiff
xen: add CONFIG_XENFV_MACHINE and CONFIG_XEN_EMU options for Xen emulation
authorDavid Woodhouse <dwmw@amazon.co.uk>
Tue, 6 Dec 2022 09:03:48 +0000 (09:03 +0000)
committerDavid Woodhouse <dwmw@amazon.co.uk>
Wed, 11 Jan 2023 08:07:51 +0000 (08:07 +0000)
The XEN_EMU option will cover core Xen support in target/, which exists
only for x86 with KVM today but could theoretically also be implemented
on Arm/Aarch64 and with TCG or other accelerators. It will also cover
the support for architecture-independent grant table and event channel
support which will be added in hw/i386/kvm/ (on the basis that the
non-KVM support is very theoretical and making it not use KVM directly
seems like gratuitous overengineering at this point).

The XENFV_MACHINE option is for the xenfv platform support, which will
now be used both by XEN_EMU and by real Xen.

The XEN option remains dependent on the Xen runtime libraries, and covers
support for real Xen. Some code which currently resides under CONFIG_XEN
will be moving to CONFIG_XENFV_MACHINE over time.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
Reviewed-by: Paul Durrant <paul@xen.org>
hw/Kconfig
hw/i386/Kconfig
hw/xen/Kconfig [new file with mode: 0644]
meson.build

index 38233bbb0f137b9d7c308af62919d4a27817d18a..ba62ff6417c9c0edc5b41783dc028447f84b8413 100644 (file)
@@ -41,6 +41,7 @@ source tpm/Kconfig
 source usb/Kconfig
 source virtio/Kconfig
 source vfio/Kconfig
+source xen/Kconfig
 source watchdog/Kconfig
 
 # arch Kconfig
index c4fb5b49bd4c1fb08848bd6480d4f66cff52303f..07b2adc84ff92a5c9e8b5df115d28e89562fa138 100644 (file)
@@ -136,3 +136,8 @@ config VMPORT
 config VMMOUSE
     bool
     depends on VMPORT
+
+config XEN_EMU
+    bool
+    default y
+    depends on KVM && (I386 || X86_64)
diff --git a/hw/xen/Kconfig b/hw/xen/Kconfig
new file mode 100644 (file)
index 0000000..755c8b1
--- /dev/null
@@ -0,0 +1,3 @@
+config XENFV_MACHINE
+    bool
+    default y if (XEN || XEN_EMU)
index 175517eafde8e34548d05040dfb6838b90295139..72eec9c68ae46aee7dc6aaa02408f74f9375588b 100644 (file)
@@ -3834,6 +3834,7 @@ if have_system
   if xen.found()
     summary_info += {'xen ctrl version':  xen.version()}
   endif
+  summary_info += {'Xen emulation':     config_all.has_key('CONFIG_XEN_EMU')}
 endif
 summary_info += {'TCG support':       config_all.has_key('CONFIG_TCG')}
 if config_all.has_key('CONFIG_TCG')