Re: [PATCH v3 4/4] soc/tegra: pmc: apply MBIST work around fo Tegra210

Peter De Schrijver
2018-01-25T10:06:25Z

On Wed, Jan 24, 2018 at 10:43:45PM +0000, Jon Hunter wrote:
>
> On 23/01/18 09:22, Peter De Schrijver wrote:
> > Apply the memory built-in self test work around when ungating certain
> > Tegra210 power domains.
>
> Nit-pick .. typo in $subject.
>
> > Signed-off-by: Peter De Schrijver <pdeschrijver-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
> > ---
> > drivers/soc/tegra/pmc.c | 5 +++++
> > 1 file changed, 5 insertions(+)
> >
> > diff --git a/drivers/soc/tegra/pmc.c b/drivers/soc/tegra/pmc.c
> > index ce62a47..c4eff4b 100644
> > --- a/drivers/soc/tegra/pmc.c
> > +++ b/drivers/soc/tegra/pmc.c
> > @@ -153,6 +153,7 @@ struct tegra_pmc_soc {
> >
> > bool has_tsense_reset;
> > bool has_gpu_clamps;
> > + bool needs_mbist_war;
> >
> > const struct tegra_io_pad_soc *io_pads;
> > unsigned int num_io_pads;
> > @@ -431,6 +432,9 @@ static int tegra_powergate_power_up(struct tegra_powergate *pg,
> >
> > usleep_range(10, 20);
> >
> > + if (pg->pmc->soc->needs_mbist_war)
> > + tegra210_clk_handle_mbist_war(pg->id);
> > +
>
> Be good if we could return an error from the above function.
>

We need to also undo whatever we did before then.

> > if (disable_clocks)
> > tegra_powergate_disable_clocks(pg);
> >
> > @@ -1815,6 +1819,7 @@ static void tegra20_pmc_setup_irq_polarity(struct tegra_pmc *pmc,
> > .cpu_powergates = tegra210_cpu_powergates,
> > .has_tsense_reset = true,
> > .has_gpu_clamps = true,
> > + .needs_mbist_war = true,
> > .num_io_pads = ARRAY_SIZE(tegra210_io_pads),
> > .io_pads = tegra210_io_pads,
> > .regs = &tegra20_pmc_regs,
> >
>
> Otherwise looks good to me.
>
> Cheers
> Jon
>
> --
> nvpublic