phy: rockchip-inno-usb2: correct 480MHz output clock stable time
authorWilliam Wu <wulf@rock-chips.com>
Tue, 15 Nov 2016 03:54:07 +0000 (11:54 +0800)
committerWilliam Wu <wulf@rock-chips.com>
Tue, 27 Dec 2016 02:56:18 +0000 (10:56 +0800)
We found that the system crashed due to 480MHz output clock of
USB2 PHY was unstable after clock had been enabled by gpu module.

Theoretically, 1 millisecond is a critical value for 480MHz
output clock stable time, so we try to change the delay time
to 1.2 millisecond to avoid this issue.

And the commit ed907fb1d7c3 ("phy: rockchip-inno-usb2: correct
clk_ops callback") used prepare callbacks instead of enable
callbacks to support gate a clk if the operation may sleep. So
we can switch from delay to sleep functions.

Also fix a spelling error from "waitting" to "waiting".

Change-Id: Ie9883e5e9a3f0c2edec9d259b844ca536348c9cf
Signed-off-by: William Wu <wulf@rock-chips.com>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
drivers/phy/phy-rockchip-inno-usb2.c

index 1f1846db4994513b334e2413223c75d2e29194eb..27199c3a34b1fdef5197449685364847e9548749 100644 (file)
@@ -298,8 +298,8 @@ static int rockchip_usb2phy_clk480m_prepare(struct clk_hw *hw)
                if (ret)
                        return ret;
 
-               /* waitting for the clk become stable */
-               udelay(1200);
+               /* waiting for the clk become stable */
+               usleep_range(1200, 1300);
        }
 
        return 0;