On 16/09/2020 17:28, Marc Zyngier wrote: ... > Make it that instead: > > static void gic_eoimode1_eoi_irq(struct irq_data *d) > { > + u32 hwirq = gic_irq(d); > + > /* Do not deactivate an IRQ forwarded to a vcpu. */ > if (irqd_is_forwarded_to_vcpu(d)) > return; > > - writel_relaxed(gic_irq(d), gic_cpu_base(d) + GIC_CPU_DEACTIVATE); > + if (hwirq < 16) > + hwirq = this_cpu_read(sgi_intid); > + > + writel_relaxed(hwirq, gic_cpu_base(d) + GIC_CPU_DEACTIVATE); > } Unfortunately, still does not boot :-( Jon -- nvpublic