pci: pcie_dw_meson: fix usb fail when pci link fails to go up

On Amlogic A311D, when the PCIe link fails disabling the related clocks
makes USB fail. For an unknown reason, this doesn happen on the S905D3 SoC.

Mimic the Linux behavior by not considering a link failure a probe failure,
and continue even if the PCIe link is down.

Reported-by: Art Nikpal <email2tema@gmail.com>
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
This commit is contained in:
Neil Armstrong
2021-09-08 14:32:12 +02:00
parent ea36f110f7
commit d6c10360dc

View File

@@ -319,15 +319,9 @@ static int meson_pcie_init_port(struct udevice *dev)
pcie_dw_setup_host(&priv->dw);
ret = meson_pcie_link_up(priv, LINK_SPEED_GEN_2);
if (ret < 0)
goto err_link_up;
meson_pcie_link_up(priv, LINK_SPEED_GEN_2);
return 0;
err_link_up:
clk_disable(&priv->clk_port);
clk_disable(&priv->clk_general);
clk_disable(&priv->clk_pclk);
err_deassert_bulk:
reset_assert_bulk(&priv->rsts);
err_power_off_phy: