Re: [PATCH] PCI: Marvell: Update PCIe fixup

From: Jason Gunthorpe
Date: Mon Nov 01 2021 - 14:21:54 EST


On Mon, Nov 01, 2021 at 06:56:49PM +0100, Pali Rohár wrote:
> On Monday 01 November 2021 13:27:11 Jason Gunthorpe wrote:
> > On Mon, Nov 01, 2021 at 04:04:05PM +0100, Pali Rohár wrote:
> > > - The code relies on rc_pci_fixup being called, which only happens
> > > when CONFIG_PCI_QUIRKS is enabled, so add that to Kconfig. Omitting
> > > this causes a booting failure with a non-obvious cause.
> > > - Update rc_pci_fixup to set the class properly, copying the
> > > more modern style from other places
> > > - Correct the rc_pci_fixup comment
> > >
> > > This patch just re-applies commit 1dc831bf53fd ("ARM: Kirkwood: Update
> > > PCI-E fixup") for all other Marvell platforms which use same buggy PCIe
> > > controller.
> >
> > I wonder if that code is even relevant any more since we started using
> > CONFIG_PCI_MVEBU
> >
> > ?
>
> It is (still) relevant for platforms which do not use CONFIG_PCI_MVEBU
> yet.

I think you should explain this in the commit message

> > Really, these broken controllers should not be used "raw" but always
> > via their special host bridge driver that fixes all the config space
> > problems.
>
> I agree.
>
> Long-term goal should be to convert these platforms to use pci-mvebu.c
> driver. And until it happens simple fixes like in commit 1dc831bf53fd is
> needed for all affected Marvell platforms.

IIRC all these platforms were obsolete before I wrote the above
commit, so I'm not sure why this has suddenly cropped up?

If you want to use a new kernel on this really old HW then update to
use the right PCI driver?

> Some details how these Marvell PCIe controllers are broken is in email:
> https://lore.kernel.org/linux-pci/20211003120944.3lmwxylnhlp2kfj7@pali/

Yes, everything about this controller is broken. It does not function
properly without its driver. The solution to these bugs is to use the
driver, which was specifically made to deal with them.

That said, I can't recall if this driver needs some fixing to work
with pre-kirkwood systems..

Jason