]> www.infradead.org Git - users/jedix/linux-maple.git/commit
xen/events: Support event channel rebind on ARM
authorJulien Grall <julien.grall@citrix.com>
Tue, 28 Jul 2015 09:10:42 +0000 (10:10 +0100)
committerChuck Anderson <chuck.anderson@oracle.com>
Fri, 5 Feb 2016 11:43:21 +0000 (03:43 -0800)
commitdd36e4090e8ef2f7d2293b3e9845b4790de7b40c
tree0f907b30a79628e98fd6b7933eaaf6bbd8f6ec1d
parent5dd38edb76cdf5bfb319261cc50094b3ecd1e6ee
xen/events: Support event channel rebind on ARM

Currently, the event channel rebind code is gated with the presence of
the vector callback.

The virtual interrupt controller on ARM has the concept of per-CPU
interrupt (PPI) which allow us to support per-VCPU event channel.
Therefore there is no need of vector callback for ARM.

Xen is already using a free PPI to notify the guest VCPU of an event.
Furthermore, the xen code initialization in Linux (see
arch/arm/xen/enlighten.c) is requesting correctly a per-CPU IRQ.

Introduce new helper xen_support_evtchn_rebind to allow architecture
decide whether rebind an event is support or not. It will always return
true on ARM and keep the same behavior on x86.

This is also allow us to drop the usage of xen_have_vector_callback
entirely in the ARM code.

Signed-off-by: Julien Grall <julien.grall@citrix.com>
Signed-off-by: David Vrabel <david.vrabel@citrix.com>
(cherry picked from commit 4a5b69464e51f4a8dd432e8c2a1468630df1a53c)
Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
(cherry picked from commit 59979b4f2bc533345c80cdba3f9613e322f47002)
arch/arm/include/asm/xen/events.h
arch/arm/xen/enlighten.c
arch/arm64/include/asm/xen/events.h
arch/x86/include/asm/xen/events.h
drivers/xen/events/events_base.c
include/xen/events.h