• Sudeep Holla's avatar
    firmware: arm_ffa: Initial support for scheduler receiver interrupt · 897e9e60
    Sudeep Holla authored
    The Framework uses the schedule receiver interrupt to inform the
    receiver’s scheduler that the receiver must be run to handle a pending
    notification. A receiver’s scheduler can obtain the description of the
    schedule receiver interrupt by invoking the FFA_FEATURES interface.
    
    The delivery of the physical schedule receiver interrupt from the secure
    state to the non-secure state depends upon the state of the interrupt
    controller as configured by the hypervisor.
    
    The schedule seceiver interrupt is assumed to be a SGI. The Arm GIC
    specification defines 16 SGIs. It recommends that they are equally
    divided between the non-secure and secure states. OS like Linux kernel
    in the non-secure state typically do not have SGIs to spare. The usage
    of SGIs in the secure state is however limited. It is more likely that
    software in the Secure world does not use all the SGIs allocated to it.
    
    It is recommended that the secure world software donates an unused SGI
    to the normal world for use as the schedule receiver interrupt. This
    implies that secure world software must configure the SGI in the GIC
    as a non-secure interrupt before presenting it to the normal world.
    
    Link: https://lore.kernel.org/r/20231005-ffa_v1-1_notif-v4-8-cddd3237809c@arm.comSigned-off-by: default avatarSudeep Holla <sudeep.holla@arm.com>
    897e9e60
driver.c 29.2 KB