[PATCH V3 06/19] clk: tegra: remove TEGRA_PLL_USE_LOCK for PLLD/PLLD2
Peter De Schrijver
pdeschrijver at nvidia.com
Wed Jul 15 01:16:44 PDT 2015
On Tue, Jul 14, 2015 at 12:59:01PM +0100, Jon Hunter wrote:
>
> On 13/07/15 15:02, Jon Hunter wrote:
> >
> >
> > On 13/07/15 14:41, Peter De Schrijver wrote:
> >> On Mon, Jul 13, 2015 at 01:39:44PM +0100, Jon Hunter wrote:
> >>> From: Vince Hsu <vinceh at nvidia.com>
> >>>
> >>> Tegra114 has a HW bug that the PLLD/PLLD2 lock bit cannot be asserted when
> >>> the DIS power domain is during up-powergating process but the clamp to this
> >>
> >> I think there is missing 'off' in this sentence?
> >>
> >> ie. ... 'the DIS power domain is off during up-powergating process'
> >>
> >> Also 'un-powergating sequence' would be nicer.
> >
> > Yes agree. I will re-word that.
>
> Updated version ...
>
>
> From d5cbecd4e97332cd8373b9c4893731eb8e063660 Mon Sep 17 00:00:00 2001
> From: Vince Hsu <vinceh at nvidia.com>
> Date: Wed, 11 Mar 2015 16:46:04 +0800
> Subject: [PATCH 06/19] clk: tegra: remove TEGRA_PLL_USE_LOCK for PLLD/PLLD2
>
> Tegra114 has a HW bug where the PLLD/PLLD2 lock bit cannot be asserted
> while turning on the Display power domain and before the clamp to this
> domain has been removed. This issue causes a timeout and aborts the power
> up sequence, even though the PLLD/PLLD2 has already locked. To avoid this,
> don't use the lock for PLLD/PLLD2, just wait 1ms and treat the clocks as
> locked.
>
> Signed-off-by: Vince Hsu <vinceh at nvidia.com>
> [jonathanh at nvidia.com: Updated the changelog description]
> Signed-off-by: Jon Hunter <jonathanh at nvidia.com>
Acked-By: Peter De Schrijver <pdeschrijver at nvidia.com>
> ---
> drivers/clk/tegra/clk-tegra114.c | 6 ++----
> 1 file changed, 2 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/clk/tegra/clk-tegra114.c b/drivers/clk/tegra/clk-tegra114.c
> index 8237d16b4075..2e5c20c7c088 100644
> --- a/drivers/clk/tegra/clk-tegra114.c
> +++ b/drivers/clk/tegra/clk-tegra114.c
> @@ -456,8 +456,7 @@ static struct tegra_clk_pll_params pll_d_params = {
> .lock_delay = 1000,
> .div_nmp = &pllp_nmp,
> .freq_table = pll_d_freq_table,
> - .flags = TEGRA_PLL_HAS_CPCON | TEGRA_PLL_SET_LFCON |
> - TEGRA_PLL_USE_LOCK,
> + .flags = TEGRA_PLL_HAS_CPCON | TEGRA_PLL_SET_LFCON,
> };
>
> static struct tegra_clk_pll_params pll_d2_params = {
> @@ -474,8 +473,7 @@ static struct tegra_clk_pll_params pll_d2_params = {
> .lock_delay = 1000,
> .div_nmp = &pllp_nmp,
> .freq_table = pll_d_freq_table,
> - .flags = TEGRA_PLL_HAS_CPCON | TEGRA_PLL_SET_LFCON |
> - TEGRA_PLL_USE_LOCK,
> + .flags = TEGRA_PLL_HAS_CPCON | TEGRA_PLL_SET_LFCON,
> };
>
> static struct pdiv_map pllu_p[] = {
> --
> 2.1.4
>
More information about the linux-arm-kernel
mailing list