Can be derived from virt_id.

Signed-off-by: Jan Kiszka <[email protected]>
---
 hypervisor/arch/arm/gic-v2.c              | 2 +-
 hypervisor/arch/arm/gic-v3.c              | 2 +-
 hypervisor/arch/arm/include/asm/irqchip.h | 1 -
 hypervisor/arch/arm/irqchip.c             | 2 --
 4 files changed, 2 insertions(+), 5 deletions(-)

diff --git a/hypervisor/arch/arm/gic-v2.c b/hypervisor/arch/arm/gic-v2.c
index 65727b0..9268191 100644
--- a/hypervisor/arch/arm/gic-v2.c
+++ b/hypervisor/arch/arm/gic-v2.c
@@ -265,7 +265,7 @@ static int gic_inject_irq(struct per_cpu *cpu_data, struct 
pending_irq *irq)
        lr = irq->virt_id;
        lr |= GICH_LR_PENDING_BIT;
 
-       if (irq->hw) {
+       if (!is_sgi(irq->virt_id)) {
                lr |= GICH_LR_HW_BIT;
                lr |= irq->type.irq << GICH_LR_PHYS_ID_SHIFT;
        } else {
diff --git a/hypervisor/arch/arm/gic-v3.c b/hypervisor/arch/arm/gic-v3.c
index 467f222..710813c 100644
--- a/hypervisor/arch/arm/gic-v3.c
+++ b/hypervisor/arch/arm/gic-v3.c
@@ -387,7 +387,7 @@ static int gic_inject_irq(struct per_cpu *cpu_data, struct 
pending_irq *irq)
        /* Only group 1 interrupts */
        lr |= ICH_LR_GROUP_BIT;
        lr |= ICH_LR_PENDING;
-       if (irq->hw) {
+       if (!is_sgi(irq->virt_id)) {
                lr |= ICH_LR_HW_BIT;
                lr |= (u64)irq->type.irq << ICH_LR_PHYS_ID_SHIFT;
        }
diff --git a/hypervisor/arch/arm/include/asm/irqchip.h 
b/hypervisor/arch/arm/include/asm/irqchip.h
index c468b70..a6d2a0c 100644
--- a/hypervisor/arch/arm/include/asm/irqchip.h
+++ b/hypervisor/arch/arm/include/asm/irqchip.h
@@ -64,7 +64,6 @@ struct irqchip_ops {
 struct pending_irq {
        u32     virt_id;
 
-       u8      hw;
        union {
                /* Physical id, when hw is 1 */
                u16 irq;
diff --git a/hypervisor/arch/arm/irqchip.c b/hypervisor/arch/arm/irqchip.c
index e0871b1..72c1364 100644
--- a/hypervisor/arch/arm/irqchip.c
+++ b/hypervisor/arch/arm/irqchip.c
@@ -136,10 +136,8 @@ int irqchip_set_pending(struct per_cpu *cpu_data, u32 
irq_id, bool try_inject)
        pending.virt_id = irq_id;
 
        if (is_sgi(irq_id)) {
-               pending.hw = 0;
                pending.type.sgi.cpuid = 0;
        } else {
-               pending.hw = 1;
                pending.type.irq = irq_id;
        }
 
-- 
2.1.4

-- 
You received this message because you are subscribed to the Google Groups 
"Jailhouse" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to