[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20191208210320.15539-3-repk@triplefau.lt>
Date: Sun, 8 Dec 2019 22:03:20 +0100
From: Remi Pommarel <repk@...plefau.lt>
To: Neil Armstrong <narmstrong@...libre.com>,
Jerome Brunet <jbrunet@...libre.com>,
Kevin Hilman <khilman@...libre.com>,
Yue Wang <yue.wang@...ogic.com>
Cc: Michael Turquette <mturquette@...libre.com>,
Stephen Boyd <sboyd@...nel.org>,
Lorenzo Pieralisi <lorenzo.pieralisi@....com>,
linux-amlogic@...ts.infradead.org, linux-clk@...r.kernel.org,
linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org,
linux-pci@...r.kernel.org, Remi Pommarel <repk@...plefau.lt>
Subject: [PATCH 2/2] PCI: amlogic: Use PCIe pll gate when available
In order to get PCIe working reliably on some AXG platforms, PCIe pll
cml needs to be enabled. This is done by using the PCIE_PLL_CML_ENABLE
clock gate.
This clock gate is optional, so do not fail if it is missing in the
devicetree.
Signed-off-by: Remi Pommarel <repk@...plefau.lt>
---
drivers/pci/controller/dwc/pci-meson.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/drivers/pci/controller/dwc/pci-meson.c b/drivers/pci/controller/dwc/pci-meson.c
index 3772b02a5c55..32b70ea9a426 100644
--- a/drivers/pci/controller/dwc/pci-meson.c
+++ b/drivers/pci/controller/dwc/pci-meson.c
@@ -89,6 +89,7 @@ struct meson_pcie_clk_res {
struct clk *mipi_gate;
struct clk *port_clk;
struct clk *general_clk;
+ struct clk *pll_cml_gate;
};
struct meson_pcie_rc_reset {
@@ -300,6 +301,10 @@ static int meson_pcie_probe_clocks(struct meson_pcie *mp)
if (IS_ERR(res->clk))
return PTR_ERR(res->clk);
+ res->pll_cml_gate = meson_pcie_probe_clock(dev, "pll_cml_en", 0);
+ if (IS_ERR(res->pll_cml_gate))
+ res->pll_cml_gate = NULL;
+
return 0;
}
--
2.24.0
Powered by blists - more mailing lists