pci: layerscape-ep: Add check of the PCIe controller enablement
authorHou Zhiqiang <Zhiqiang.Hou@nxp.com>
Thu, 13 May 2021 06:54:32 +0000 (14:54 +0800)
committerPriyanka Jain <priyanka.jain@nxp.com>
Thu, 17 Jun 2021 06:16:11 +0000 (11:46 +0530)
Stop to initialize the PCIe controller if it's disabled by RCW.

Fixes: 118e58e26eba ("pci: layerscape: Split the EP and RC driver")
Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
drivers/pci/pcie_layerscape_ep.c

index c723163..f2813ae 100644 (file)
@@ -269,6 +269,10 @@ static int ls_pcie_ep_probe(struct udevice *dev)
        pcie->idx = ((unsigned long)pcie->dbi - PCIE_SYS_BASE_ADDR) /
                    PCIE_CCSR_SIZE;
 
+       /* This controller is disabled by RCW */
+       if (!is_serdes_configured(PCIE_SRDS_PRTCL(pcie->idx)))
+               return 0;
+
        pcie->big_endian = fdtdec_get_bool(gd->fdt_blob, dev_of_offset(dev),
                                           "big-endian");