Re: [PATCH] mmc: renesas_sdhi: add checks for pinctrl_lookup_state

From: Wolfram Sang
Date: Wed Oct 23 2019 - 11:33:18 EST


On Mon, Oct 21, 2019 at 04:32:49PM +0200, Ulf Hansson wrote:
> On Fri, 18 Oct 2019 at 15:13, Chuhong Yuan <hslester96@xxxxxxxxx> wrote:
> >
> > renesas_sdhi_probe misses checks for pinctrl_lookup_state and may miss
> > failures.
> > Add checks for them to fix the problem.
> >
> > Signed-off-by: Chuhong Yuan <hslester96@xxxxxxxxx>
> > ---
> > drivers/mmc/host/renesas_sdhi_core.c | 5 +++++
> > 1 file changed, 5 insertions(+)
> >
> > diff --git a/drivers/mmc/host/renesas_sdhi_core.c b/drivers/mmc/host/renesas_sdhi_core.c
> > index d4ada5cca2d1..dc5ad6632df3 100644
> > --- a/drivers/mmc/host/renesas_sdhi_core.c
> > +++ b/drivers/mmc/host/renesas_sdhi_core.c
> > @@ -694,8 +694,13 @@ int renesas_sdhi_probe(struct platform_device *pdev,
> > if (!IS_ERR(priv->pinctrl)) {
> > priv->pins_default = pinctrl_lookup_state(priv->pinctrl,
> > PINCTRL_STATE_DEFAULT);
> > + if (IS_ERR(priv->pins_default))
> > + return PTR_ERR(priv->pins_default);
> > +
> > priv->pins_uhs = pinctrl_lookup_state(priv->pinctrl,
> > "state_uhs");
> > + if (IS_ERR(priv->pins_uhs))
> > + return PTR_ERR(priv->pins_uhs);
> > }
>
> This looks correct to me, as I guess if there is a pinctrl specified
> for device node of the controller, it means that it should be used!?
>
> I understand that this is only used for those variants that supports
> UHS-I via the renesas_sdhi_start_signal_voltage_switch(). Wolfram, is
> this fine you think?

Well, I don't like to bail out because this error is not fatal for basic
operations. How about releasing priv->pinctrl again with an additional
warning that pinctrl settings are broken and will prevent 1.8v modes?

Opinions?

Attachment: signature.asc
Description: PGP signature