mmc: uniphier-sd: Convert to pinctrl_select_default_state()
authorUlf Hansson <ulf.hansson@linaro.org>
Fri, 6 Dec 2019 17:08:21 +0000 (18:08 +0100)
committerUlf Hansson <ulf.hansson@linaro.org>
Mon, 16 Dec 2019 12:00:41 +0000 (13:00 +0100)
Let's drop the boilerplate code for managing the default pinctrl state and
convert into using the new pinctrl_select_default_state().

Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Acked-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Link: https://lore.kernel.org/r/20191206170821.29711-10-ulf.hansson@linaro.org
drivers/mmc/host/uniphier-sd.c

index 0c72ec5546c36d20c9fdbfae8db76f4848134309..a1683c49cb903b8ef5806d2d85cea45452054b5e 100644 (file)
@@ -59,7 +59,6 @@
 struct uniphier_sd_priv {
        struct tmio_mmc_data tmio_data;
        struct pinctrl *pinctrl;
-       struct pinctrl_state *pinstate_default;
        struct pinctrl_state *pinstate_uhs;
        struct clk *clk;
        struct reset_control *rst;
@@ -500,13 +499,12 @@ static int uniphier_sd_start_signal_voltage_switch(struct mmc_host *mmc,
 {
        struct tmio_mmc_host *host = mmc_priv(mmc);
        struct uniphier_sd_priv *priv = uniphier_sd_priv(host);
-       struct pinctrl_state *pinstate;
+       struct pinctrl_state *pinstate = NULL;
        u32 val, tmp;
 
        switch (ios->signal_voltage) {
        case MMC_SIGNAL_VOLTAGE_330:
                val = UNIPHIER_SD_VOLT_330;
-               pinstate = priv->pinstate_default;
                break;
        case MMC_SIGNAL_VOLTAGE_180:
                val = UNIPHIER_SD_VOLT_180;
@@ -521,7 +519,10 @@ static int uniphier_sd_start_signal_voltage_switch(struct mmc_host *mmc,
        tmp |= FIELD_PREP(UNIPHIER_SD_VOLT_MASK, val);
        writel(tmp, host->ctl + UNIPHIER_SD_VOLT);
 
-       pinctrl_select_state(priv->pinctrl, pinstate);
+       if (pinstate)
+               pinctrl_select_state(priv->pinctrl, pinstate);
+       else
+               pinctrl_select_default_state(mmc_dev(mmc));
 
        return 0;
 }
@@ -533,11 +534,6 @@ static int uniphier_sd_uhs_init(struct tmio_mmc_host *host,
        if (IS_ERR(priv->pinctrl))
                return PTR_ERR(priv->pinctrl);
 
-       priv->pinstate_default = pinctrl_lookup_state(priv->pinctrl,
-                                                     PINCTRL_STATE_DEFAULT);
-       if (IS_ERR(priv->pinstate_default))
-               return PTR_ERR(priv->pinstate_default);
-
        priv->pinstate_uhs = pinctrl_lookup_state(priv->pinctrl, "uhs");
        if (IS_ERR(priv->pinstate_uhs))
                return PTR_ERR(priv->pinstate_uhs);