diff options
author | Marc Zyngier <maz@kernel.org> | 2021-11-04 18:01:30 +0000 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2021-11-26 11:36:19 +0100 |
commit | 3391fa278c6df4dc9c9ea1eb5f102f4570c68ddb (patch) | |
tree | 043c939c65502967022304d98591fc214bf6dd5e /drivers/pci | |
parent | a632cb0b4013ff9ba8ce5f062a45e5652975a68b (diff) | |
download | linux-stable-3391fa278c6df4dc9c9ea1eb5f102f4570c68ddb.tar.gz linux-stable-3391fa278c6df4dc9c9ea1eb5f102f4570c68ddb.tar.bz2 linux-stable-3391fa278c6df4dc9c9ea1eb5f102f4570c68ddb.zip |
PCI: Add MSI masking quirk for Nvidia ION AHCI
commit f21082fb20dbfb3e42b769b59ef21c2a7f2c7c1f upstream.
The ION AHCI device pretends that MSI masking isn't a thing, while it
actually implements it and needs MSIs to be unmasked to work. Add a quirk
to that effect.
Reported-by: Rui Salvaterra <rsalvaterra@gmail.com>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Tested-by: Rui Salvaterra <rsalvaterra@gmail.com>
Reviewed-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Bjorn Helgaas <helgaas@kernel.org>
Link: https://lore.kernel.org/r/CALjTZvbzYfBuLB+H=fj2J+9=DxjQ2Uqcy0if_PvmJ-nU-qEgkg@mail.gmail.com
Link: https://lore.kernel.org/r/20211104180130.3825416-3-maz@kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/pci')
-rw-r--r-- | drivers/pci/quirks.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c index a10471ff765a..315e96ba651a 100644 --- a/drivers/pci/quirks.c +++ b/drivers/pci/quirks.c @@ -5579,3 +5579,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_DEV_FLAGS_HAS_MSI_MASKING; +} +DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_NVIDIA, 0x0ab8, nvidia_ion_ahci_fixup); |