Always identical to virt_id.
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
if (!is_sgi(irq->virt_id)) {
lr |= GICH_LR_HW_BIT;
- lr |= irq->type.irq << GICH_LR_PHYS_ID_SHIFT;
+ lr |= irq->virt_id << GICH_LR_PHYS_ID_SHIFT;
}
gic_write_lr(first_free, lr);
lr |= ICH_LR_PENDING;
if (!is_sgi(irq->virt_id)) {
lr |= ICH_LR_HW_BIT;
- lr |= (u64)irq->type.irq << ICH_LR_PHYS_ID_SHIFT;
+ lr |= (u64)irq->virt_id << ICH_LR_PHYS_ID_SHIFT;
}
gic_write_lr(free_lr, lr);
struct pending_irq {
u32 virt_id;
- union {
- /* Physical id, when hw is 1 */
- u16 irq;
- } type;
-
struct pending_irq *next;
struct pending_irq *prev;
} __attribute__((packed));
pending.virt_id = irq_id;
- if (!is_sgi(irq_id)) {
- pending.type.irq = irq_id;
- }
-
if (try_inject && irqchip.inject_irq(cpu_data, &pending) == 0)
return 0;