• Julien Grall's avatar
    xen/events: Support event channel rebind on ARM · 4a5b6946
    Julien Grall authored
    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: default avatarJulien Grall <julien.grall@citrix.com>
    Signed-off-by: default avatarDavid Vrabel <david.vrabel@citrix.com>
    4a5b6946
enlighten.c 7.65 KB