Messages in this thread | | | Date | Tue, 24 Oct 2023 10:48:31 +0200 | From | Dominic Rath <> | Subject | Re: [PATCH v3 3/5] irqchip/gic-v3-its: Split allocation from initialisation of its_node |
| |
Hi,
On Fri, Oct 06, 2023 at 02:59:27PM +0200, Lorenzo Pieralisi wrote: > From: Marc Zyngier <maz@kernel.org> > > In order to pave the way for more fancy quirk handling without making > more of a mess of this terrible driver, split the allocation of the > ITS descriptor (its_node) from the actual probing.
it seems that this change breaks MSI-X (MSI?) reception on at least the TI AM64x, probably most/all of TI's recent devices (K3).
These devices rely on a quirk CONFIG_SOCIONEXT_SYNQUACER_PREITS that uses an address from the dts specified e.g. as
socionext,synquacer-pre-its = <0x1000000 0x400000>;
to configure a MSI base address that differs from the ARM default.
With this change, the quirk still sets its->get_msi_base and clears IRQ_DOMAIN_FLAG_ISOLATED_MSI from its->msi_domain_flags during its_of_probe, but both get overwritten again during its_probe_one with the defaults.
Previously the defaults would be set first and then the quirks were applied.
I have no idea whether TI's use of this quirk was "correct", but it did work, and since 6.6-rc6 MSI-X has been broken for us.
Best Regards, Dominic
| |