Hi all,
This is the remaining series for the full functional "dynamic node
programming using overlay dtbo" feature. The first part [1] has
already been merged.
Quoting from the original series, the first part has already made
Xen aware of new device tree node which means updating the dt_host
with overlay node information, and in this series, the goal is to
map IRQ and IOMMU during runtime, where we will do the actual IOMMU
and IRQ mapping and unmapping to a running domain. Also, documentation
of the "dynamic node programming using overlay dtbo" feature is added.
Patch 1 and 2 are fixes of the existing code which is noticed during
my local tests, details please see the commit message.
Gitlab CI for this series can be found in [2].
[1] https://lore.kernel.org/xen-devel/20230906011631.30310-1-vikram.garhwal@amd.com/
[2] https://gitlab.com/xen-project/people/henryw/xen/-/pipelines/1298425517
Henry Wang (6):
xen/common/dt-overlay: Fix lock issue when add/remove the device
tools/xl: Correct the help information and exit code of the dt-overlay
command
xen/arm, doc: Add a DT property to specify IOMMU for Dom0less domUs
tools/arm: Introduce the "nr_spis" xl config entry
xen/arm: Add XEN_DOMCTL_dt_overlay DOMCTL and related operations
tools: Introduce the "xl dt-overlay {attach,detach}" commands
Vikram Garhwal (2):
xen/arm/gic: Allow routing/removing interrupt to running VMs
docs: Add device tree overlay documentation
docs/man/xl.cfg.5.pod.in | 14 +
docs/misc/arm/device-tree/booting.txt | 16 +
docs/misc/arm/overlay.txt | 99 ++++++
tools/golang/xenlight/helpers.gen.go | 2 +
tools/golang/xenlight/types.gen.go | 1 +
tools/include/libxl.h | 10 +
tools/include/xenctrl.h | 3 +
tools/libs/ctrl/xc_dt_overlay.c | 31 ++
tools/libs/light/libxl_arm.c | 4 +-
tools/libs/light/libxl_dt_overlay.c | 28 ++
tools/libs/light/libxl_types.idl | 1 +
tools/xl/xl_cmdtable.c | 4 +-
tools/xl/xl_parse.c | 3 +
tools/xl/xl_vmcontrol.c | 48 ++-
xen/arch/arm/dom0less-build.c | 11 +-
xen/arch/arm/domctl.c | 3 +
xen/arch/arm/gic-vgic.c | 15 +-
xen/arch/arm/gic.c | 15 -
xen/arch/arm/vgic/vgic.c | 10 +-
xen/common/dt-overlay.c | 441 ++++++++++++++++++++------
xen/include/public/domctl.h | 15 +
xen/include/public/sysctl.h | 11 +-
xen/include/xen/dt-overlay.h | 7 +
23 files changed, 644 insertions(+), 148 deletions(-)
create mode 100644 docs/misc/arm/overlay.txt
--
2.34.1