GPU: ipu: fix lockup caused by pending chained interrupts
Even with the oops fixed by a previous patch, the system still fails to kexec, due to a stuck chained interrupt locking the system. We must disable the child interrupts prior to setting up the irq chip to ensure we don't get stuck here. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk> Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
This commit is contained in:
Родитель
553a59fc8f
Коммит
510e6426d3
|
@ -1107,6 +1107,9 @@ static int ipu_irq_init(struct ipu_soc *ipu)
|
|||
return ret;
|
||||
}
|
||||
|
||||
for (i = 0; i < IPU_NUM_IRQS; i += 32)
|
||||
ipu_cm_write(ipu, 0, IPU_INT_CTRL(i / 32));
|
||||
|
||||
for (i = 0; i < IPU_NUM_IRQS; i += 32) {
|
||||
gc = irq_get_domain_generic_chip(ipu->domain, i);
|
||||
gc->reg_base = ipu->cm_reg;
|
||||
|
|
Загрузка…
Ссылка в новой задаче