summaryrefslogtreecommitdiffstats
path: root/drivers/irqchip
diff options
context:
space:
mode:
authorMarc Zyngier <maz@kernel.org>2021-03-15 14:21:21 +0000
committerMarc Zyngier <maz@kernel.org>2021-06-01 10:46:00 +0100
commit5f59229680f70078ac4c11db2ae89be087474144 (patch)
tree3621fb6da192b5f8e8734b15765f0dd17605a548 /drivers/irqchip
parent2f2f7e39dbb31aa1db13c490a4e47502497510fe (diff)
downloadlinux-5f59229680f70078ac4c11db2ae89be087474144.tar.bz2
KVM: arm64: timer: Add support for SW-based deactivation
In order to deal with the lack of active state, we need to use the mask/unmask primitives (after all, the active state is just an additional mask on top of the normal one). To avoid adding a bunch of ugly conditionals in the timer and vgic code, let's use a timer-specific irqdomain to deal with the state conversion. Yes, this is an unexpected use of irqdomains, but there is no reason not to be just as creative as the designers of the HW... This involves overloading the vcpu_affinity, set_irqchip_state and eoi callbacks so that the rest of the KVM code can continue ignoring the oddities of the underlying platform. Signed-off-by: Marc Zyngier <maz@kernel.org>
Diffstat (limited to 'drivers/irqchip')
0 files changed, 0 insertions, 0 deletions