]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
pci: pcie_dw_meson: fix usb fail when pci link fails to go up
authorNeil Armstrong <narmstrong@baylibre.com>
Wed, 8 Sep 2021 12:32:12 +0000 (14:32 +0200)
committerNeil Armstrong <narmstrong@baylibre.com>
Thu, 7 Oct 2021 08:14:50 +0000 (10:14 +0200)
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>
drivers/pci/pcie_dw_meson.c

index 0525ecbea6498cbac12a7a981b429790dfaeb3c6..07da9fa533221b672f459ff8fb422ca9350f47cf 100644 (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: