Re: [REGRESSION][BISECTED] 5.15-rc1: Broken AHCI on NVIDIA ION (MCP79)

From: Marc Zyngier
Date: Thu Oct 07 2021 - 11:03:37 EST


> > diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c
> > index 4537d1ea14fd..dc7741431bf3 100644
> > --- a/drivers/pci/quirks.c
> > +++ b/drivers/pci/quirks.c
> > @@ -5795,3 +5795,9 @@ static void apex_pci_fixup_class(struct pci_dev *pdev)
> > }
> > DECLARE_PCI_FIXUP_CLASS_HEADER(0x1ac1, 0x089a,
> > PCI_CLASS_NOT_DEFINED, 8, apex_pci_fixup_class);
> > +
> > +static void nvidia_ion_ahci_fixup(struct pci_dev *pdev)
> > +{
> > + pdev->dev_flags |= PCI_MSI_FLAGS_MASKBIT;

Duh. Make that:

diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c
index dc7741431bf3..89c7c99cd1bb 100644
--- a/drivers/pci/quirks.c
+++ b/drivers/pci/quirks.c
@@ -5798,6 +5798,6 @@ DECLARE_PCI_FIXUP_CLASS_HEADER(0x1ac1, 0x089a,

static void nvidia_ion_ahci_fixup(struct pci_dev *pdev)
{
- pdev->dev_flags |= PCI_MSI_FLAGS_MASKBIT;
+ pdev->dev_flags |= PCI_DEV_FLAGS_HAS_MSI_MASKING;
}
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_NVIDIA, 0x0ab8, nvidia_ion_ahci_fixup);

M.

--
Without deviation from the norm, progress is not possible.