Messages in this thread | | | Date | Tue, 03 Nov 2020 09:54:23 +0000 | From | Marc Zyngier <> | Subject | Re: Aw: Re: [PATCH] pci: mediatek: fix warning in msi.h |
| |
On 2020-11-02 22:18, Thomas Gleixner wrote: > On Mon, Nov 02 2020 at 17:16, Thomas Gleixner wrote: >> On Mon, Nov 02 2020 at 11:30, Marc Zyngier wrote: >>> --- a/drivers/pci/probe.c >>> +++ b/drivers/pci/probe.c >>> @@ -871,6 +871,8 @@ static void pci_set_bus_msi_domain(struct pci_bus >>> *bus) >>> d = pci_host_bridge_msi_domain(b); >>> >>> dev_set_msi_domain(&bus->dev, d); >>> + if (!d) >>> + bus->bus_flags |= PCI_BUS_FLAGS_NO_MSI; >> >> Hrm, that might break legacy setups (no irqdomain support). I'd rather >> prefer to explicitly tell the pci core at host registration time. > > s/might break/ breaks / Just validated :)
For my own edification, can you point me to the failing case?
> So we really need some other solution and removing the warning is not > an > option. If MSI is enabled then we want to get a warning when a PCI > device has no MSI domain associated. Explicitly expressing the PCIE > brigde misfeature of not supporting MSI is way better than silently > returning an error code which is swallowed anyway.
I don't disagree here, though the PCI_MSI_ARCH_FALLBACKS mechanism makes it more difficult to establish.
> Whatever the preferred way is via flags at host probe time or flagging > it post probe I don't care much as long as it is consistent.
Host probe time is going to require some changes in the core PCI api, as everything that checks for a MSI domain is based on the pci_bus structure, which is only allocated much later.
I'll have a think.
M. -- Jazz is not dead. It just smells funny...
| |