Hi Neil, I tested it and it does fix the issue. I am able to boot from eMMC.
Thanks a lot! Anton On Mon, Dec 14, 2020 at 7:48 PM Neil Armstrong <narmstr...@baylibre.com> wrote: > > This fixes the wrong usage of clrsetbits_le32(), badly setting the set > argument. > > Fixes: c4c726c26b ("pinctrl: meson: add pinconf support") > Reported-by: Anton Arapov <ara...@gmail.com> > Reported-by: Otto Meier <gf...@gmx.net> > Signed-off-by: Neil Armstrong <narmstr...@baylibre.com> > --- > Hi Anton, Otto, > > This should fix eMMC booting on Odroid-C2, could you have a quick try to > confirm ? > > Thanks, > Neil > > drivers/pinctrl/meson/pinctrl-meson.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/pinctrl/meson/pinctrl-meson.c > b/drivers/pinctrl/meson/pinctrl-meson.c > index d4539b02d8..5065b62436 100644 > --- a/drivers/pinctrl/meson/pinctrl-meson.c > +++ b/drivers/pinctrl/meson/pinctrl-meson.c > @@ -216,13 +216,13 @@ static int meson_pinconf_bias_set(struct udevice *dev, > unsigned int pin, > } > > /* othewise, enable the bias and select level */ > - clrsetbits_le32(priv->reg_pullen + reg, BIT(bit), 1); > + clrsetbits_le32(priv->reg_pullen + reg, BIT(bit), BIT(bit)); > ret = meson_gpio_calc_reg_and_bit(dev, offset, REG_PULL, ®, &bit); > if (ret) > return ret; > > clrsetbits_le32(priv->reg_pull + reg, BIT(bit), > - param == PIN_CONFIG_BIAS_PULL_UP); > + (param == PIN_CONFIG_BIAS_PULL_UP ? BIT(bit) : 0)); > > return 0; > } > -- > 2.25.1 >