diff options
| author | Richard Zhu <hongxing.zhu@nxp.com> | 2025-08-22 16:40:52 -0400 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2025-08-28 16:28:44 +0200 |
| commit | d0252e69b9322d1f230858fa6da77f9965119d3f (patch) | |
| tree | 07b6db177bdd950dec1cda8e6a4acf4004ff7062 | |
| parent | cee067ef2055723dcaf27b1ffcb6ae7f6b1347b0 (diff) | |
| download | linux-d0252e69b9322d1f230858fa6da77f9965119d3f.tar.gz linux-d0252e69b9322d1f230858fa6da77f9965119d3f.tar.bz2 linux-d0252e69b9322d1f230858fa6da77f9965119d3f.zip | |
PCI: imx6: Delay link start until configfs 'start' written
[ Upstream commit 2e6ea70690ddd1ffa422423fd0d4523e4dfe4b62 ]
According to Documentation/PCI/endpoint/pci-endpoint-cfs.rst, the Endpoint
controller (EPC) should only start the link when userspace writes '1' to
the '/sys/kernel/config/pci_ep/controllers/<EPC>/start' attribute, which
ultimately results in calling imx_pcie_start_link() via
pci_epc_start_store().
To align with the documented behavior, do not start the link automatically
when adding the EP controller.
Fixes: 75c2f26da03f ("PCI: imx6: Add i.MX PCIe EP mode support")
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
[mani: reworded commit subject and description]
Signed-off-by: Manivannan Sadhasivam <mani@kernel.org>
[bhelgaas: commit log]
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Reviewed-by: Frank Li <Frank.Li@nxp.com>
Cc: stable@vger.kernel.org
Link: https://patch.msgid.link/20250709033722.2924372-3-hongxing.zhu@nxp.com
[ imx_pcie_ltssm_enable() => imx6_pcie_ltssm_enable() ]
Signed-off-by: Sasha Levin <sashal@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| -rw-r--r-- | drivers/pci/controller/dwc/pci-imx6.c | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/drivers/pci/controller/dwc/pci-imx6.c b/drivers/pci/controller/dwc/pci-imx6.c index cedfbd425863..2bcc86ee14f4 100644 --- a/drivers/pci/controller/dwc/pci-imx6.c +++ b/drivers/pci/controller/dwc/pci-imx6.c @@ -1098,8 +1098,6 @@ static int imx6_add_pcie_ep(struct imx6_pcie *imx6_pcie, dev_err(dev, "failed to initialize endpoint\n"); return ret; } - /* Start LTSSM. */ - imx6_pcie_ltssm_enable(dev); return 0; } |
