[PATCH] pci: disable MSI on RDC PCI to PCI-E bridges

Marcos Del Sol Vives posted 1 patch 3 months ago
drivers/pci/quirks.c | 1 +
1 file changed, 1 insertion(+)
[PATCH] pci: disable MSI on RDC PCI to PCI-E bridges
Posted by Marcos Del Sol Vives 3 months ago
These bridges, present on Vortex86DX3 and Vortex86EX2 SoCs, do not
support MSIs. If enabled, interrupts generated by PCI-E devices never
reach the processor.

I have contacted the manufacturer (DM&P) and they confirmed that PCI MSIs
need to be disabled for them.

Signed-off-by: Marcos Del Sol Vives <marcos@orca.pet>
---
 drivers/pci/quirks.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c
index d7f4ee634263..f610ea45ca9e 100644
--- a/drivers/pci/quirks.c
+++ b/drivers/pci/quirks.c
@@ -2715,6 +2715,7 @@ static void quirk_disable_msi(struct pci_dev *dev)
 DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_8131_BRIDGE, quirk_disable_msi);
 DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_VIA, 0xa238, quirk_disable_msi);
 DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_ATI, 0x5a3f, quirk_disable_msi);
+DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_RDC, 0x1031, quirk_disable_msi);
 
 /*
  * The APC bridge device in AMD 780 family northbridges has some random
-- 
2.34.1
Re: [PATCH] pci: disable MSI on RDC PCI to PCI-E bridges
Posted by Bjorn Helgaas 2 months ago
On Sun, Jul 06, 2025 at 01:32:08AM +0200, Marcos Del Sol Vives wrote:
> These bridges, present on Vortex86DX3 and Vortex86EX2 SoCs, do not
> support MSIs. If enabled, interrupts generated by PCI-E devices never
> reach the processor.
> 
> I have contacted the manufacturer (DM&P) and they confirmed that PCI MSIs
> need to be disabled for them.
> 
> Signed-off-by: Marcos Del Sol Vives <marcos@orca.pet>

Applied to pci/msi for v6.18, thanks!

> ---
>  drivers/pci/quirks.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c
> index d7f4ee634263..f610ea45ca9e 100644
> --- a/drivers/pci/quirks.c
> +++ b/drivers/pci/quirks.c
> @@ -2715,6 +2715,7 @@ static void quirk_disable_msi(struct pci_dev *dev)
>  DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_8131_BRIDGE, quirk_disable_msi);
>  DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_VIA, 0xa238, quirk_disable_msi);
>  DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_ATI, 0x5a3f, quirk_disable_msi);
> +DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_RDC, 0x1031, quirk_disable_msi);
>  
>  /*
>   * The APC bridge device in AMD 780 family northbridges has some random
> -- 
> 2.34.1
>