Commit a00b87c1 authored by wanghaibin's avatar wanghaibin Committed by Dongxu Sun
Browse files

irqchip/gic-v4.1: Rework get/set_irqchip_state callbacks of GICv4.1-sgi chip

virt inclusion
category: feature
bugzilla: https://gitee.com/openeuler/kernel/issues/I8K89F


CVE: NA

------------------------------------------------------------------

Rework get/set_irqchip_state callbacks of GICv4.1-sgi chip
to add support for the new vPPI.

Specifically,

- Reading the pending state is done by re-using a pair of redistributor
  registers (GICR_VSGIR, GICR_VSGIPENDR).
- Setting the pending state is done by generating it as we'd otherwise do
  for a guest (writing to GITS_PPIR).
- Clearing the pending state is done by emitting a VSGI command with the
  "clear" bit set.

Still, we only support vtimer interrupt whose intid is 27. And note that
the pending state of it is stored at bit[16] of GICR_VSGIPENDR.

Signed-off-by: default avatarwanghaibin <wanghaibin.wang@huawei.com>
Signed-off-by: default avatarZenghui Yu <yuzenghui@huawei.com>
Signed-off-by: default avatarKunkun Jiang <jiangkunkun@huawei.com>
Signed-off-by: default avatarDongxu Sun <sundongxu3@huawei.com>
parent fd6e5954
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment