Commit d6fc4510 authored by Hans Zhang's avatar Hans Zhang Committed by Bjorn Helgaas
Browse files

PCI: cadence: Search for MSI Capability with correct ID



907912c1 ("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: 907912c1 ("PCI: cadence: Use cdns_pcie_find_*capability() to avoid hardcoding offsets")
Reported-by: default avatarSasha Levin <sashal@kernel.org>
Closes: https://lore.kernel.org/r/aOfMk9BW8BH2P30V@laps/


Signed-off-by: default avatarHans Zhang <18255117159@163.com>
Signed-off-by: default avatarBjorn Helgaas <bhelgaas@google.com>
Link: https://patch.msgid.link/20251010144307.12979-1-18255117159@163.com
parent 3a866087
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -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. */