]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
pinctrl: renesas: rzg2l: Move pinconf_to_config_argument() call outside of switch...
authorLad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
Thu, 29 Aug 2024 19:48:40 +0000 (20:48 +0100)
committerGeert Uytterhoeven <geert+renesas@glider.be>
Mon, 2 Sep 2024 08:13:59 +0000 (10:13 +0200)
Refactor the `rzg2l_pinctrl_pinconf_set()` function by moving the call to
`arg = pinconf_to_config_argument(_configs[i])` to the beginning of the
loop. Previously, this call was redundantly made in most cases within the
switch statement.

Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/20240829194841.84398-3-prabhakar.mahadev-lad.rj@bp.renesas.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
drivers/pinctrl/renesas/pinctrl-rzg2l.c

index 6f1e5b5a9dc39c12ab3db38605eb679dcc8272c0..5a403915fed2c61efb2750a167bc441e2c7e402f 100644 (file)
@@ -1385,9 +1385,9 @@ static int rzg2l_pinctrl_pinconf_set(struct pinctrl_dev *pctldev,
 
        for (i = 0; i < num_configs; i++) {
                param = pinconf_to_config_param(_configs[i]);
+               arg = pinconf_to_config_argument(_configs[i]);
                switch (param) {
                case PIN_CONFIG_INPUT_ENABLE:
-                       arg = pinconf_to_config_argument(_configs[i]);
 
                        if (!(cfg & PIN_CFG_IEN))
                                return -EINVAL;
@@ -1396,7 +1396,6 @@ static int rzg2l_pinctrl_pinconf_set(struct pinctrl_dev *pctldev,
                        break;
 
                case PIN_CONFIG_OUTPUT_ENABLE:
-                       arg = pinconf_to_config_argument(_configs[i]);
                        if (!(cfg & PIN_CFG_OEN))
                                return -EINVAL;
                        if (!pctrl->data->oen_write)
@@ -1407,12 +1406,10 @@ static int rzg2l_pinctrl_pinconf_set(struct pinctrl_dev *pctldev,
                        break;
 
                case PIN_CONFIG_POWER_SOURCE:
-                       settings.power_source = pinconf_to_config_argument(_configs[i]);
+                       settings.power_source = arg;
                        break;
 
                case PIN_CONFIG_SLEW_RATE:
-                       arg = pinconf_to_config_argument(_configs[i]);
-
                        if (!(cfg & PIN_CFG_SR) || arg > 1)
                                return -EINVAL;
 
@@ -1433,8 +1430,6 @@ static int rzg2l_pinctrl_pinconf_set(struct pinctrl_dev *pctldev,
                        break;
 
                case PIN_CONFIG_DRIVE_STRENGTH:
-                       arg = pinconf_to_config_argument(_configs[i]);
-
                        if (!(cfg & PIN_CFG_IOLH_A) || hwcfg->drive_strength_ua)
                                return -EINVAL;
 
@@ -1454,12 +1449,10 @@ static int rzg2l_pinctrl_pinconf_set(struct pinctrl_dev *pctldev,
                            !hwcfg->drive_strength_ua)
                                return -EINVAL;
 
-                       settings.drive_strength_ua = pinconf_to_config_argument(_configs[i]);
+                       settings.drive_strength_ua = arg;
                        break;
 
                case PIN_CONFIG_OUTPUT_IMPEDANCE_OHMS:
-                       arg = pinconf_to_config_argument(_configs[i]);
-
                        if (!(cfg & PIN_CFG_IOLH_B) || !hwcfg->iolh_groupb_oi[0])
                                return -EINVAL;
 
@@ -1477,7 +1470,6 @@ static int rzg2l_pinctrl_pinconf_set(struct pinctrl_dev *pctldev,
                        if (!(cfg & PIN_CFG_IOLH_RZV2H))
                                return -EINVAL;
 
-                       arg = pinconf_to_config_argument(_configs[i]);
                        if (arg > 3)
                                return -EINVAL;
                        rzg2l_rmw_pin_config(pctrl, IOLH(off), bit, IOLH_MASK, arg);