Skip to content

Commit f199bf5

Browse files
Marc ZyngierKAGA-KOKO
authored andcommitted
irqchip/gic-v3-its: Don't override quirk settings with default values
When splitting the allocation of the ITS node from its configuration, some of the default settings were kept in the latter instead of being moved to the former. This has the side effect of negating some of the quirk detections that have happened in between, amongst which the dreaded Synquacer hack (that also affect Dominic's TI platform). Move the initialisation of these fields early, so that they can again be overriden by the Synquacer quirk. Fixes: 9585a49 ("irqchip/gic-v3-its: Split allocation from initialisation of its_node") Reported by: Dominic Rath <[email protected]> Signed-off-by: Marc Zyngier <[email protected]> Signed-off-by: Thomas Gleixner <[email protected]> Tested-by: Dominic Rath <[email protected]> Link: https://lore.kernel.org/r/20231024084831.GA3788@JADEVM-DRA Link: https://lore.kernel.org/r/[email protected]
1 parent 4dc5af1 commit f199bf5

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

drivers/irqchip/irq-gic-v3-its.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5112,8 +5112,6 @@ static int __init its_probe_one(struct its_node *its)
51125112
}
51135113
its->cmd_base = (void *)page_address(page);
51145114
its->cmd_write = its->cmd_base;
5115-
its->get_msi_base = its_irq_get_msi_base;
5116-
its->msi_domain_flags = IRQ_DOMAIN_FLAG_ISOLATED_MSI;
51175115

51185116
err = its_alloc_tables(its);
51195117
if (err)
@@ -5362,6 +5360,8 @@ static struct its_node __init *its_node_init(struct resource *res,
53625360
its->typer = gic_read_typer(its_base + GITS_TYPER);
53635361
its->base = its_base;
53645362
its->phys_base = res->start;
5363+
its->get_msi_base = its_irq_get_msi_base;
5364+
its->msi_domain_flags = IRQ_DOMAIN_FLAG_ISOLATED_MSI;
53655365

53665366
its->numa_node = numa_node;
53675367
its->fwnode_handle = handle;

0 commit comments

Comments
 (0)