[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH] device-tree: Move Arm's static-evtchn feature to common
On Tue, 27 May 2025, Michal Orzel wrote: > There's nothing Arm specific about this feature. Move it to common as > part of a larger activity to commonalize device tree related features. > For now, select it only for ARM until others (e.g. RISC-V) verify it > works for them too. > > Signed-off-by: Michal Orzel <michal.orzel@xxxxxxx> Reviewed-by: Stefano Stabellini <sstabellini@xxxxxxxxxx> > --- > Other candidates: static memory, shared memory > --- > xen/arch/arm/Kconfig | 8 -------- > xen/arch/arm/Makefile | 1 - > xen/arch/arm/setup.c | 2 +- > xen/common/Kconfig | 8 ++++++++ > xen/common/device-tree/Makefile | 1 + > xen/{arch/arm => common/device-tree}/static-evtchn.c | 3 +-- > xen/{arch/arm/include/asm => include/xen}/static-evtchn.h | 6 +++--- > 7 files changed, 14 insertions(+), 15 deletions(-) > rename xen/{arch/arm => common/device-tree}/static-evtchn.c (99%) > rename xen/{arch/arm/include/asm => include/xen}/static-evtchn.h (77%) > > diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig > index a5aad97a688e..57919d8b3ac8 100644 > --- a/xen/arch/arm/Kconfig > +++ b/xen/arch/arm/Kconfig > @@ -253,14 +253,6 @@ config STATIC_SHM > help > This option enables statically shared memory on a dom0less system. > > -config STATIC_EVTCHN > - bool "Static event channel support on a dom0less system" > - depends on DOM0LESS_BOOT > - default y > - help > - This option enables establishing static event channel communication > - between domains on a dom0less system (domU-domU as well as domU-dom0). > - > config PARTIAL_EMULATION > bool "Enable partial emulation of system/coprocessor registers" > default y > diff --git a/xen/arch/arm/Makefile b/xen/arch/arm/Makefile > index 129a109d6ec5..eeeac4e653ec 100644 > --- a/xen/arch/arm/Makefile > +++ b/xen/arch/arm/Makefile > @@ -51,7 +51,6 @@ obj-y += setup.o > obj-y += shutdown.o > obj-y += smp.o > obj-y += smpboot.o > -obj-$(CONFIG_STATIC_EVTCHN) += static-evtchn.init.o > obj-$(CONFIG_STATIC_MEMORY) += static-memory.init.o > obj-$(CONFIG_STATIC_SHM) += static-shmem.init.o > obj-y += sysctl.o > diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c > index 10b46d068405..734e23da4408 100644 > --- a/xen/arch/arm/setup.c > +++ b/xen/arch/arm/setup.c > @@ -31,6 +31,7 @@ > #include <xen/version.h> > #include <xen/vmap.h> > #include <xen/stack-protector.h> > +#include <xen/static-evtchn.h> > #include <xen/trace.h> > #include <xen/libfdt/libfdt-xen.h> > #include <xen/acpi.h> > @@ -39,7 +40,6 @@ > #include <asm/alternative.h> > #include <asm/dom0less-build.h> > #include <asm/page.h> > -#include <asm/static-evtchn.h> > #include <asm/current.h> > #include <asm/setup.h> > #include <asm/gic.h> > diff --git a/xen/common/Kconfig b/xen/common/Kconfig > index 3d66d0939738..0951d4c2f286 100644 > --- a/xen/common/Kconfig > +++ b/xen/common/Kconfig > @@ -162,6 +162,14 @@ config STATIC_MEMORY > > If unsure, say N. > > +config STATIC_EVTCHN > + bool "Static event channel support on a dom0less system" > + depends on DOM0LESS_BOOT && ARM > + default y > + help > + This option enables establishing static event channel communication > + between domains on a dom0less system (domU-domU as well as domU-dom0). > + > menu "Speculative hardening" > > config INDIRECT_THUNK > diff --git a/xen/common/device-tree/Makefile b/xen/common/device-tree/Makefile > index 831b91399b74..2df7eb27222e 100644 > --- a/xen/common/device-tree/Makefile > +++ b/xen/common/device-tree/Makefile > @@ -6,3 +6,4 @@ obj-$(CONFIG_DOM0LESS_BOOT) += dom0less-build.o > obj-$(CONFIG_OVERLAY_DTB) += dt-overlay.o > obj-y += intc.o > obj-$(CONFIG_DOMAIN_BUILD_HELPERS) += kernel.o > +obj-$(CONFIG_STATIC_EVTCHN) += static-evtchn.init.o > diff --git a/xen/arch/arm/static-evtchn.c > b/xen/common/device-tree/static-evtchn.c > similarity index 99% > rename from xen/arch/arm/static-evtchn.c > rename to xen/common/device-tree/static-evtchn.c > index 49db08d5c6fc..8b82e6b3d8a6 100644 > --- a/xen/arch/arm/static-evtchn.c > +++ b/xen/common/device-tree/static-evtchn.c > @@ -1,8 +1,7 @@ > /* SPDX-License-Identifier: GPL-2.0-only */ > > #include <xen/event.h> > - > -#include <asm/static-evtchn.h> > +#include <xen/static-evtchn.h> > > #define STATIC_EVTCHN_NODE_SIZE_CELLS 2 > > diff --git a/xen/arch/arm/include/asm/static-evtchn.h > b/xen/include/xen/static-evtchn.h > similarity index 77% > rename from xen/arch/arm/include/asm/static-evtchn.h > rename to xen/include/xen/static-evtchn.h > index f964522f6a62..31ae92741aad 100644 > --- a/xen/arch/arm/include/asm/static-evtchn.h > +++ b/xen/include/xen/static-evtchn.h > @@ -1,7 +1,7 @@ > /* SPDX-License-Identifier: GPL-2.0-only */ > > -#ifndef __ASM_STATIC_EVTCHN_H_ > -#define __ASM_STATIC_EVTCHN_H_ > +#ifndef XEN_STATIC_EVTCHN_H > +#define XEN_STATIC_EVTCHN_H > > #ifdef CONFIG_STATIC_EVTCHN > > @@ -13,7 +13,7 @@ static inline void alloc_static_evtchn(void) {}; > > #endif /* CONFIG_STATIC_EVTCHN */ > > -#endif /* __ASM_STATIC_EVTCHN_H_ */ > +#endif /* XEN_STATIC_EVTCHN_H */ > > /* > * Local variables: > -- > 2.25.1 >
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |