Message ID | 20221024074128.1113554-9-waynec@nvidia.com |
---|---|
State | Superseded |
Headers | show |
Series | Enable USB host and device functions on Jetson | expand |
On 24-10-22, 15:41, Wayne Chang wrote: Consider revision of title to: "Disable trk clk when not in use" > The change fixes an issue that the pad tracking is a one-time calibration > for Tegra186 and Tegra194. We should disable the clk when it is done. > The 100us delay is for HW recording the calibration value. Consider: "pad tracking is a one-time calibration for Tegra186 and Tegra194. clk should be disabled after calibration. Disable clk after claibration. While at it add 100us delay HW recording the calibration > > Signed-off-by: Wayne Chang <waynec@nvidia.com> > --- > drivers/phy/tegra/xusb-tegra186.c | 6 ++++-- > 1 file changed, 4 insertions(+), 2 deletions(-) > > diff --git a/drivers/phy/tegra/xusb-tegra186.c b/drivers/phy/tegra/xusb-tegra186.c > index 0996ede63387..f121b4ffbbfd 100644 > --- a/drivers/phy/tegra/xusb-tegra186.c > +++ b/drivers/phy/tegra/xusb-tegra186.c > @@ -609,6 +609,10 @@ static void tegra186_utmi_bias_pad_power_on(struct tegra_xusb_padctl *padctl) > value &= ~USB2_PD_TRK; > padctl_writel(padctl, value, XUSB_PADCTL_USB2_BIAS_PAD_CTL1); > > + udelay(100); > + > + clk_disable_unprepare(priv->usb2_trk_clk); > + > mutex_unlock(&padctl->lock); > } > > @@ -633,8 +637,6 @@ static void tegra186_utmi_bias_pad_power_off(struct tegra_xusb_padctl *padctl) > value |= USB2_PD_TRK; > padctl_writel(padctl, value, XUSB_PADCTL_USB2_BIAS_PAD_CTL1); > > - clk_disable_unprepare(priv->usb2_trk_clk); > - > mutex_unlock(&padctl->lock); > } > > -- > 2.25.1
On 11/5/22 22:58, Vinod Koul wrote: > External email: Use caution opening links or attachments > > > On 24-10-22, 15:41, Wayne Chang wrote: > > Consider revision of title to: "Disable trk clk when not in use" > >> The change fixes an issue that the pad tracking is a one-time calibration >> for Tegra186 and Tegra194. We should disable the clk when it is done. >> The 100us delay is for HW recording the calibration value. > > Consider: > > "pad tracking is a one-time calibration for Tegra186 and Tegra194. clk > should be disabled after calibration. > > Disable clk after claibration. > > While at it add 100us delay HW recording the calibration > Thanks for the review. I'll update the title and commit message in the next patch series. thanks, Wayne. >> >> Signed-off-by: Wayne Chang <waynec@nvidia.com> >> --- >> drivers/phy/tegra/xusb-tegra186.c | 6 ++++-- >> 1 file changed, 4 insertions(+), 2 deletions(-) >> >> diff --git a/drivers/phy/tegra/xusb-tegra186.c b/drivers/phy/tegra/xusb-tegra186.c >> index 0996ede63387..f121b4ffbbfd 100644 >> --- a/drivers/phy/tegra/xusb-tegra186.c >> +++ b/drivers/phy/tegra/xusb-tegra186.c >> @@ -609,6 +609,10 @@ static void tegra186_utmi_bias_pad_power_on(struct tegra_xusb_padctl *padctl) >> value &= ~USB2_PD_TRK; >> padctl_writel(padctl, value, XUSB_PADCTL_USB2_BIAS_PAD_CTL1); >> >> + udelay(100); >> + >> + clk_disable_unprepare(priv->usb2_trk_clk); >> + >> mutex_unlock(&padctl->lock); >> } >> >> @@ -633,8 +637,6 @@ static void tegra186_utmi_bias_pad_power_off(struct tegra_xusb_padctl *padctl) >> value |= USB2_PD_TRK; >> padctl_writel(padctl, value, XUSB_PADCTL_USB2_BIAS_PAD_CTL1); >> >> - clk_disable_unprepare(priv->usb2_trk_clk); >> - >> mutex_unlock(&padctl->lock); >> } >> >> -- >> 2.25.1 > > -- > ~Vinod
diff --git a/drivers/phy/tegra/xusb-tegra186.c b/drivers/phy/tegra/xusb-tegra186.c index 0996ede63387..f121b4ffbbfd 100644 --- a/drivers/phy/tegra/xusb-tegra186.c +++ b/drivers/phy/tegra/xusb-tegra186.c @@ -609,6 +609,10 @@ static void tegra186_utmi_bias_pad_power_on(struct tegra_xusb_padctl *padctl) value &= ~USB2_PD_TRK; padctl_writel(padctl, value, XUSB_PADCTL_USB2_BIAS_PAD_CTL1); + udelay(100); + + clk_disable_unprepare(priv->usb2_trk_clk); + mutex_unlock(&padctl->lock); } @@ -633,8 +637,6 @@ static void tegra186_utmi_bias_pad_power_off(struct tegra_xusb_padctl *padctl) value |= USB2_PD_TRK; padctl_writel(padctl, value, XUSB_PADCTL_USB2_BIAS_PAD_CTL1); - clk_disable_unprepare(priv->usb2_trk_clk); - mutex_unlock(&padctl->lock); }
The change fixes an issue that the pad tracking is a one-time calibration for Tegra186 and Tegra194. We should disable the clk when it is done. The 100us delay is for HW recording the calibration value. Signed-off-by: Wayne Chang <waynec@nvidia.com> --- drivers/phy/tegra/xusb-tegra186.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)