PCI: tegra: Clear CLKREQ# enable on port disable
When a root port is disabled, disable the CLKREQ# signal if available. Tested-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Thierry Reding <treding@nvidia.com> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
This commit is contained in:
parent
41534e5378
commit
0d20d62192
|
@ -569,6 +569,7 @@ static void tegra_pcie_port_enable(struct tegra_pcie_port *port)
|
|||
|
||||
static void tegra_pcie_port_disable(struct tegra_pcie_port *port)
|
||||
{
|
||||
const struct tegra_pcie_soc_data *soc = port->pcie->soc_data;
|
||||
unsigned long ctrl = tegra_pcie_port_get_pex_ctrl(port);
|
||||
unsigned long value;
|
||||
|
||||
|
@ -579,6 +580,10 @@ static void tegra_pcie_port_disable(struct tegra_pcie_port *port)
|
|||
|
||||
/* disable reference clock */
|
||||
value = afi_readl(port->pcie, ctrl);
|
||||
|
||||
if (soc->has_pex_clkreq_en)
|
||||
value &= ~AFI_PEX_CTRL_CLKREQ_EN;
|
||||
|
||||
value &= ~AFI_PEX_CTRL_REFCLK_EN;
|
||||
afi_writel(port->pcie, value, ctrl);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue