aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/pci/controller/dwc
diff options
context:
space:
mode:
authorOm Prakash Singh <omp@nvidia.com>2021-06-23 15:35:24 +0530
committerLorenzo Pieralisi <lorenzo.pieralisi@arm.com>2021-08-04 12:28:17 +0100
commitde2bbf2b71bb994b2bbe5965e25dc06df83c5128 (patch)
treef9b6331f547932939346df66832547683e27873f /drivers/pci/controller/dwc
parentPCI: tegra194: Disable interrupts before entering L2 (diff)
downloadlinux-dev-de2bbf2b71bb994b2bbe5965e25dc06df83c5128.tar.xz
linux-dev-de2bbf2b71bb994b2bbe5965e25dc06df83c5128.zip
PCI: tegra194: Don't allow suspend when Tegra PCIe is in EP mode
When Tegra PCIe is in endpoint mode it should be available for root port. PCIe link up by root port fails if it is in suspend state. So, don't allow Tegra to suspend when endpoint mode is enabled. Link: https://lore.kernel.org/r/20210623100525.19944-5-omp@nvidia.com Signed-off-by: Om Prakash Singh <omp@nvidia.com> Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> Reviewed-by: Bjorn Helgaas <bhelgaas@google.com> Acked-by: Vidya Sagar <vidyas@nvidia.com>
Diffstat (limited to 'drivers/pci/controller/dwc')
-rw-r--r--drivers/pci/controller/dwc/pcie-tegra194.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/pci/controller/dwc/pcie-tegra194.c b/drivers/pci/controller/dwc/pcie-tegra194.c
index f2e49dda2c83..2d86e947bf1f 100644
--- a/drivers/pci/controller/dwc/pcie-tegra194.c
+++ b/drivers/pci/controller/dwc/pcie-tegra194.c
@@ -2246,6 +2246,11 @@ static int tegra_pcie_dw_resume_early(struct device *dev)
struct tegra_pcie_dw *pcie = dev_get_drvdata(dev);
u32 val;
+ if (pcie->mode == DW_PCIE_EP_TYPE) {
+ dev_err(dev, "Suspend is not supported in EP mode");
+ return -ENOTSUPP;
+ }
+
if (!pcie->link_state)
return 0;