Merge "drivers: GICv3: Check IRQ state in gic_set_affinity()"
This commit is contained in:
commit
5a54ca071c
1 changed files with 8 additions and 0 deletions
|
@ -803,6 +803,14 @@ static int gic_set_affinity(struct irq_data *d, const struct cpumask *mask_val,
|
|||
|
||||
gic_write_irouter(val, reg);
|
||||
|
||||
/*
|
||||
* It is possible that irq is disabled from SW perspective only,
|
||||
* because kernel takes lazy disable approach. Therefore check irq
|
||||
* descriptor if it should kept disabled.
|
||||
*/
|
||||
if (irqd_irq_disabled(d))
|
||||
enabled = 0;
|
||||
|
||||
/*
|
||||
* If the interrupt was enabled, enabled it again. Otherwise,
|
||||
* just wait for the distributor to have digested our changes.
|
||||
|
|
Loading…
Add table
Reference in a new issue