aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorXiaowei Bao <xiaowei.bao@nxp.com>2020-09-18 16:00:15 +0800
committerLorenzo Pieralisi <lorenzo.pieralisi@arm.com>2020-09-21 11:46:04 +0100
commit6bfc9c3a2c70a987e6432925769ec1376a12aed0 (patch)
treec32b77c3b2a30b9ccc531c6526941b7d5888ac6e
parentPCI: designware-ep: Add the doorbell mode of MSI-X in EP mode (diff)
downloadlinux-dev-6bfc9c3a2c70a987e6432925769ec1376a12aed0.tar.xz
linux-dev-6bfc9c3a2c70a987e6432925769ec1376a12aed0.zip
PCI: designware-ep: Move the function of getting MSI capability forward
Move the function of getting MSI capability to the front of init function, because the init function of the EP platform driver will use the return value by the function of getting MSI capability. Link: https://lore.kernel.org/r/20200918080024.13639-4-Zhiqiang.Hou@nxp.com Signed-off-by: Xiaowei Bao <xiaowei.bao@nxp.com> Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com> Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> Reviewed-by: Andrew Murray <andrew.murray@arm.com>
-rw-r--r--drivers/pci/controller/dwc/pcie-designware-ep.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/pci/controller/dwc/pcie-designware-ep.c b/drivers/pci/controller/dwc/pcie-designware-ep.c
index 5ae87e8ffb85..25767a334259 100644
--- a/drivers/pci/controller/dwc/pcie-designware-ep.c
+++ b/drivers/pci/controller/dwc/pcie-designware-ep.c
@@ -582,10 +582,6 @@ int dw_pcie_ep_init_complete(struct dw_pcie_ep *ep)
return -EIO;
}
- ep->msi_cap = dw_pcie_find_capability(pci, PCI_CAP_ID_MSI);
-
- ep->msix_cap = dw_pcie_find_capability(pci, PCI_CAP_ID_MSIX);
-
offset = dw_pcie_ep_find_ext_capability(pci, PCI_EXT_CAP_ID_REBAR);
dw_pcie_dbi_ro_wr_en(pci);
@@ -677,6 +673,10 @@ int dw_pcie_ep_init(struct dw_pcie_ep *ep)
if (ret < 0)
epc->max_functions = 1;
+ ep->msi_cap = dw_pcie_find_capability(pci, PCI_CAP_ID_MSI);
+
+ ep->msix_cap = dw_pcie_find_capability(pci, PCI_CAP_ID_MSIX);
+
if (ep->ops->ep_init)
ep->ops->ep_init(ep);