OSDN Git Service

arm64: dts: rockchip: add u2phy clock for ehci and ohci of rk3399
authorWilliam wu <wulf@rock-chips.com>
Wed, 21 Dec 2016 10:41:05 +0000 (18:41 +0800)
committerHeiko Stuebner <heiko@sntech.de>
Mon, 2 Jan 2017 13:25:10 +0000 (14:25 +0100)
commitb5d1c57299734f5b54035ef2e61706b83041f20c
tree946b1d6e278f0832e9e84136afedcac265e06720
parent8742466a43c9dea57684012175e146f0db3eec3b
arm64: dts: rockchip: add u2phy clock for ehci and ohci of rk3399

We found that the suspend process was blocked when it run into
ehci/ohci module due to clk-480m of usb2-phy was disabled.

The root cause is that usb2-phy suspended earlier than ehci/ohci
(usb2-phy will be auto suspended if no devices plug-in). and the
clk-480m provided by it was disabled if no module used. However,
some suspend process related ehci/ohci are base on this clock,
so we should refer it into ehci/ohci driver to prevent this case.

The u2phy clock flow like this:
===
      u2phy ________________
           |                |    |-----> UTMI_CLK ---------> | EHCI |
OSC_24M ---|---> PHY_PLL----|----|
           |________^_______|    |-----> 480M_CLK ---|G|---> | USBPHY_480M_SRC| ----> USBPHY_480M for SoC
                    |
                    |
                   GRF
===

Signed-off-by: William wu <wulf@rock-chips.com>
Signed-off-by: Xing Zheng <zhengxing@rock-chips.com>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
arch/arm64/boot/dts/rockchip/rk3399.dtsi