From: Jianxin Qin Date: Tue, 26 Jun 2018 02:46:40 +0000 (+0800) Subject: usb: phy2: recovery analog status in PHY initial function X-Git-Tag: khadas-vims-v0.9.6-release~1785 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=89d1d31ad7ab88e0a5602f95bd6131500834ef6b;p=platform%2Fkernel%2Flinux-amlogic.git usb: phy2: recovery analog status in PHY initial function PD#164286: usb: phy2: recovery analog status during initial phase If a USB device is enumerated done by Host, then the host system reboot without power off, the AML USB PHY statue need to recovery, or the USB device will be enumerated unsuccessfully. Change-Id: If122e53b6a818be11be0ed6581ac485450244db0 Signed-off-by: Jianxin Qin --- diff --git a/drivers/amlogic/usb/phy/phy-aml-new-usb2-v2.c b/drivers/amlogic/usb/phy/phy-aml-new-usb2-v2.c index 9203666..cecb808 100644 --- a/drivers/amlogic/usb/phy/phy-aml-new-usb2-v2.c +++ b/drivers/amlogic/usb/phy/phy-aml-new-usb2-v2.c @@ -90,9 +90,12 @@ void set_usb_pll(struct amlogic_usb_v2 *phy, void __iomem *reg) writel(phy->pll_setting[2], reg + 0x48); udelay(100); writel((0x10000000 | (phy->pll_setting[0])), reg + 0x40); + /* PHY Tune */ writel(phy->pll_setting[3], reg + 0x50); writel(phy->pll_setting[4], reg + 0x10); + /* Recovery analog status */ + writel(0, reg + 0x38); writel(phy->pll_setting[5], reg + 0x34); }