Commit 85ccae13 authored by Geert Uytterhoeven's avatar Geert Uytterhoeven

Revert "pinctrl: sh-pfc: r8a77990: Add support for pull-up only pins"

This reverts commit f4caa6ee.

The same can be expressed better by dropping the
SH_PFC_PIN_CFG_PULL_DOWN flag from the GPIO description, as it includes
returning an error to the caller when trying to configure the pin for
pull-down, causing:

    sh-pfc e6060000.pin-controller: pin_config_set op failed for pin 201
    sh-pfc e6060000.pin-controller: Error applying setting, reverse things back
    sh-pfc e6060000.pin-controller: failed to select default state
Signed-off-by: default avatarGeert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: default avatarSimon Horman <horms+renesas@verge.net.au>
parent f7d8b568
...@@ -4927,17 +4927,6 @@ static const struct pinmux_bias_reg pinmux_bias_regs[] = { ...@@ -4927,17 +4927,6 @@ static const struct pinmux_bias_reg pinmux_bias_regs[] = {
{ /* sentinel */ }, { /* sentinel */ },
}; };
static bool pin_has_pud(unsigned int pin)
{
/* Some pins are pull-up only */
switch (pin) {
case RCAR_GP_PIN(6, 9): /* USB30_OVC */
return false;
}
return true;
}
static unsigned int r8a77990_pinmux_get_bias(struct sh_pfc *pfc, static unsigned int r8a77990_pinmux_get_bias(struct sh_pfc *pfc,
unsigned int pin) unsigned int pin)
{ {
...@@ -4950,7 +4939,7 @@ static unsigned int r8a77990_pinmux_get_bias(struct sh_pfc *pfc, ...@@ -4950,7 +4939,7 @@ static unsigned int r8a77990_pinmux_get_bias(struct sh_pfc *pfc,
if (!(sh_pfc_read(pfc, reg->puen) & BIT(bit))) if (!(sh_pfc_read(pfc, reg->puen) & BIT(bit)))
return PIN_CONFIG_BIAS_DISABLE; return PIN_CONFIG_BIAS_DISABLE;
else if (!pin_has_pud(pin) || (sh_pfc_read(pfc, reg->pud) & BIT(bit))) else if (sh_pfc_read(pfc, reg->pud) & BIT(bit))
return PIN_CONFIG_BIAS_PULL_UP; return PIN_CONFIG_BIAS_PULL_UP;
else else
return PIN_CONFIG_BIAS_PULL_DOWN; return PIN_CONFIG_BIAS_PULL_DOWN;
...@@ -4971,13 +4960,11 @@ static void r8a77990_pinmux_set_bias(struct sh_pfc *pfc, unsigned int pin, ...@@ -4971,13 +4960,11 @@ static void r8a77990_pinmux_set_bias(struct sh_pfc *pfc, unsigned int pin,
if (bias != PIN_CONFIG_BIAS_DISABLE) if (bias != PIN_CONFIG_BIAS_DISABLE)
enable |= BIT(bit); enable |= BIT(bit);
if (pin_has_pud(pin)) { updown = sh_pfc_read(pfc, reg->pud) & ~BIT(bit);
updown = sh_pfc_read(pfc, reg->pud) & ~BIT(bit); if (bias == PIN_CONFIG_BIAS_PULL_UP)
if (bias == PIN_CONFIG_BIAS_PULL_UP) updown |= BIT(bit);
updown |= BIT(bit);
sh_pfc_write(pfc, reg->pud, updown); sh_pfc_write(pfc, reg->pud, updown);
}
sh_pfc_write(pfc, reg->puen, enable); sh_pfc_write(pfc, reg->puen, enable);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment