]> www.infradead.org Git - users/hch/misc.git/commitdiff
PCI: cadence: Search for MSI Capability with correct ID
authorHans Zhang <18255117159@163.com>
Fri, 10 Oct 2025 14:43:07 +0000 (22:43 +0800)
committerBjorn Helgaas <bhelgaas@google.com>
Mon, 13 Oct 2025 21:42:29 +0000 (16:42 -0500)
907912c1daa7 ("PCI: cadence: Use cdns_pcie_find_*capability() to avoid
hardcoding offsets") incorrectly searched for the MSI-X Capability ID
instead of the MSI Capability ID in cdns_pcie_ep_get_msi().

Search for PCI_CAP_ID_MSI, not PCI_CAP_ID_MSIX, to fix this problem.

Fixes: 907912c1daa7 ("PCI: cadence: Use cdns_pcie_find_*capability() to avoid hardcoding offsets")
Reported-by: Sasha Levin <sashal@kernel.org>
Closes: https://lore.kernel.org/r/aOfMk9BW8BH2P30V@laps/
Signed-off-by: Hans Zhang <18255117159@163.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Link: https://patch.msgid.link/20251010144307.12979-1-18255117159@163.com
drivers/pci/controller/cadence/pcie-cadence-ep.c

index 1eac012a82262866f9fcb0c3e129e0ea529596b7..c0e1194a936b345cd06b5f5a733a3ad51c4d69a3 100644 (file)
@@ -255,7 +255,7 @@ static int cdns_pcie_ep_get_msi(struct pci_epc *epc, u8 fn, u8 vfn)
        u16 flags, mme;
        u8 cap;
 
-       cap = cdns_pcie_find_capability(pcie, PCI_CAP_ID_MSIX);
+       cap = cdns_pcie_find_capability(pcie, PCI_CAP_ID_MSI);
        fn = cdns_pcie_get_fn_from_vfn(pcie, fn, vfn);
 
        /* Validate that the MSI feature is actually enabled. */