]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
pinctrl: generic: rename PIN_CONFIG_OUTPUT to LEVEL
authorLinus Walleij <linus.walleij@linaro.org>
Fri, 5 Sep 2025 09:21:50 +0000 (11:21 +0200)
committerLinus Walleij <linus.walleij@linaro.org>
Mon, 8 Sep 2025 12:24:20 +0000 (14:24 +0200)
This generic pin config property is confusingly named so let's
rename it to make things clearer.

There are already drivers in the tree that use PIN_CONFIG_OUTPUT
to *read* the value of an output driven pin, which is a big
semantic confusion for the head: are we then reading the
setting of the output or the actual value/level that is put
out on the pin?

We already have PIN_CONFIG_OUTPUT_ENABLE that turns on driver
buffers for output, so this can by logical conclusion only
drive the voltage level if it should be any different.

But if we read the pin, are we then reading the *setting* of
the output value or the *actual* value we can see on the
line?

If the pin has not first been set into output mode with
PIN_CONFIG_OUTPUT_ENABLE, but is instead in some input mode
or tristate, what will reading this property actually
return?

Reading the current users reading this property it is clear
that what we read is the logical level of the pin as 0 or 1
depending on if it is low or high.

Rename it to PIN_CONFIG_LEVEL so it is crystal clear that
we set or read the voltage level of the pin and nothing else.

Acked-by: Sudeep Holla <sudeep.holla@arm.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
39 files changed:
Documentation/driver-api/pin-control.rst
drivers/gpio/gpio-rockchip.c
drivers/pinctrl/bcm/pinctrl-bcm2835.c
drivers/pinctrl/cirrus/pinctrl-madera-core.c
drivers/pinctrl/mediatek/pinctrl-airoha.c
drivers/pinctrl/mediatek/pinctrl-moore.c
drivers/pinctrl/mediatek/pinctrl-mtk-common.c
drivers/pinctrl/mediatek/pinctrl-paris.c
drivers/pinctrl/meson/pinctrl-amlogic-a4.c
drivers/pinctrl/meson/pinctrl-meson.c
drivers/pinctrl/nomadik/pinctrl-abx500.c
drivers/pinctrl/nuvoton/pinctrl-npcm7xx.c
drivers/pinctrl/nuvoton/pinctrl-npcm8xx.c
drivers/pinctrl/pinconf-generic.c
drivers/pinctrl/pinctrl-at91-pio4.c
drivers/pinctrl/pinctrl-aw9523.c
drivers/pinctrl/pinctrl-cy8c95x0.c
drivers/pinctrl/pinctrl-ingenic.c
drivers/pinctrl/pinctrl-k210.c
drivers/pinctrl/pinctrl-microchip-sgpio.c
drivers/pinctrl/pinctrl-ocelot.c
drivers/pinctrl/pinctrl-pic32.c
drivers/pinctrl/pinctrl-rk805.c
drivers/pinctrl/pinctrl-rockchip.c
drivers/pinctrl/pinctrl-rp1.c
drivers/pinctrl/pinctrl-scmi.c
drivers/pinctrl/pinctrl-stmfx.c
drivers/pinctrl/pinctrl-sx150x.c
drivers/pinctrl/qcom/pinctrl-lpass-lpi.c
drivers/pinctrl/qcom/pinctrl-msm.c
drivers/pinctrl/qcom/pinctrl-spmi-gpio.c
drivers/pinctrl/qcom/pinctrl-spmi-mpp.c
drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c
drivers/pinctrl/qcom/pinctrl-ssbi-mpp.c
drivers/pinctrl/renesas/pinctrl-rza1.c
drivers/pinctrl/stm32/pinctrl-stm32.c
drivers/pinctrl/sunplus/sppctl.c
include/linux/pinctrl/pinconf-generic.h
sound/hda/codecs/side-codecs/cirrus_scodec_test.c

index 27ea1236307e84965598c69d5e687055153823d1..8208924e513e1f6420d04a42c0e49fa7cd5c7583 100644 (file)
@@ -863,7 +863,7 @@ has to be handled by the ``<linux/gpio/consumer.h>`` interface. Instead view thi
 a certain pin config setting. Look in e.g. ``<linux/pinctrl/pinconf-generic.h>``
 and you find this in the documentation:
 
-  PIN_CONFIG_OUTPUT:
+  PIN_CONFIG_LEVEL:
      this will configure the pin in output, use argument
      1 to indicate high level, argument 0 to indicate low level.
 
@@ -897,7 +897,7 @@ And your machine configuration may look like this:
        };
 
        static unsigned long uart_sleep_mode[] = {
-               PIN_CONF_PACKED(PIN_CONFIG_OUTPUT, 0),
+               PIN_CONF_PACKED(PIN_CONFIG_LEVEL, 0),
        };
 
        static struct pinctrl_map pinmap[] __initdata = {
index bcfc323a8315ef560d5891444cafe3f494a65e7d..47174eb3ba76fbe8d7573e186fcf07f13002fa71 100644 (file)
@@ -769,7 +769,7 @@ static int rockchip_gpio_probe(struct platform_device *pdev)
                list_del(&cfg->head);
 
                switch (cfg->param) {
-               case PIN_CONFIG_OUTPUT:
+               case PIN_CONFIG_LEVEL:
                        ret = rockchip_gpio_direction_output(&bank->gpio_chip, cfg->pin, cfg->arg);
                        if (ret)
                                dev_warn(dev, "setting output pin %u to %u failed\n", cfg->pin,
index 7dbf079739bcc14a2ef8d5731af997b60b2b681c..c165674c5b4db0dc70afad4f111b46f3d4b4790b 100644 (file)
@@ -1023,7 +1023,7 @@ static int bcm2835_pinconf_get(struct pinctrl_dev *pctldev,
        /* No way to read back bias config in HW */
 
        switch (param) {
-       case PIN_CONFIG_OUTPUT:
+       case PIN_CONFIG_LEVEL:
                if (fsel != BCM2835_FSEL_GPIO_OUT)
                        return -EINVAL;
 
@@ -1091,7 +1091,7 @@ static int bcm2835_pinconf_set(struct pinctrl_dev *pctldev,
                        break;
 
                /* Set output-high or output-low */
-               case PIN_CONFIG_OUTPUT:
+               case PIN_CONFIG_LEVEL:
                        bcm2835_gpio_set_bit(pc, arg ? GPSET0 : GPCLR0, pin);
                        break;
 
@@ -1202,7 +1202,7 @@ static int bcm2711_pinconf_set(struct pinctrl_dev *pctldev,
                        break;
 
                /* Set output-high or output-low */
-               case PIN_CONFIG_OUTPUT:
+               case PIN_CONFIG_LEVEL:
                        bcm2835_gpio_set_bit(pc, arg ? GPSET0 : GPCLR0, pin);
                        break;
 
index d19ef13224cca753cf1a9b5140ec754e8b80283f..1d9481b1709178bfb4d61be940824493f41dec1b 100644 (file)
@@ -804,7 +804,7 @@ static int madera_pin_conf_get(struct pinctrl_dev *pctldev, unsigned int pin,
                if (conf[0] & MADERA_GP1_IP_CFG_MASK)
                        result = 1;
                break;
-       case PIN_CONFIG_OUTPUT:
+       case PIN_CONFIG_LEVEL:
                if ((conf[1] & MADERA_GP1_DIR_MASK) &&
                    (conf[0] & MADERA_GP1_LVL_MASK))
                        result = 1;
@@ -902,7 +902,7 @@ static int madera_pin_conf_set(struct pinctrl_dev *pctldev, unsigned int pin,
                        mask[1] |= MADERA_GP1_DIR_MASK;
                        conf[1] |= MADERA_GP1_DIR;
                        break;
-               case PIN_CONFIG_OUTPUT:
+               case PIN_CONFIG_LEVEL:
                        val = pinconf_to_config_argument(*configs);
                        mask[0] |= MADERA_GP1_LVL_MASK;
                        if (val)
index 8fb3b65a1b775cf078d3c926af59480e9e09ab30..c1e736786f5c368e545a82d91c7fbae82bd1e8f9 100644 (file)
@@ -2765,7 +2765,7 @@ static int airoha_pinconf_set(struct pinctrl_dev *pctrl_dev,
                        break;
                case PIN_CONFIG_OUTPUT_ENABLE:
                case PIN_CONFIG_INPUT_ENABLE:
-               case PIN_CONFIG_OUTPUT: {
+               case PIN_CONFIG_LEVEL: {
                        bool input = param == PIN_CONFIG_INPUT_ENABLE;
                        int err;
 
@@ -2774,7 +2774,7 @@ static int airoha_pinconf_set(struct pinctrl_dev *pctrl_dev,
                        if (err)
                                return err;
 
-                       if (param == PIN_CONFIG_OUTPUT) {
+                       if (param == PIN_CONFIG_LEVEL) {
                                err = airoha_pinconf_set_pin_value(pctrl_dev,
                                                                   pin, !!arg);
                                if (err)
index 11dc525eb3a2dc8ceabf2278ee1a2abaa425eec1..70f608347a5f68915fd26775af7e4ef84773933c 100644 (file)
@@ -332,7 +332,7 @@ static int mtk_pinconf_set(struct pinctrl_dev *pctldev, unsigned int pin,
                                goto err;
 
                        break;
-               case PIN_CONFIG_OUTPUT:
+               case PIN_CONFIG_LEVEL:
                        err = mtk_hw_set_value(hw, desc, PINCTRL_PIN_REG_DIR,
                                               MTK_OUTPUT);
                        if (err)
index d10306024111c86816bf59abadc907b89ec459a8..d6a46fe0cda891436da54dddaf3949a6ccab42a2 100644 (file)
@@ -384,7 +384,7 @@ static int mtk_pconf_parse_conf(struct pinctrl_dev *pctldev,
                mtk_pmx_gpio_set_direction(pctldev, NULL, pin, true);
                ret = mtk_pconf_set_ies_smt(pctl, pin, arg, param);
                break;
-       case PIN_CONFIG_OUTPUT:
+       case PIN_CONFIG_LEVEL:
                mtk_gpio_set(pctl->chip, pin, arg);
                ret = mtk_pmx_gpio_set_direction(pctldev, NULL, pin, false);
                break;
index 3e714554789d0e7e31ecce92388f53b906bdf122..6bf37d8085fae5ac96b4ffefae9075bf3b04f241 100644 (file)
@@ -169,7 +169,7 @@ static int mtk_pinconf_get(struct pinctrl_dev *pctldev,
                if (!ret)
                        err = -EINVAL;
                break;
-       case PIN_CONFIG_OUTPUT:
+       case PIN_CONFIG_LEVEL:
                err = mtk_hw_get_value(hw, desc, PINCTRL_PIN_REG_DIR, &ret);
                if (err)
                        break;
@@ -292,7 +292,7 @@ static int mtk_pinconf_set(struct pinctrl_dev *pctldev, unsigned int pin,
                /* regard all non-zero value as enable */
                err = mtk_hw_set_value(hw, desc, PINCTRL_PIN_REG_SR, !!arg);
                break;
-       case PIN_CONFIG_OUTPUT:
+       case PIN_CONFIG_LEVEL:
                err = mtk_hw_set_value(hw, desc, PINCTRL_PIN_REG_DO,
                                       arg);
                if (err)
index e34e984c2b38a8309603eafd9366c14dc031a940..d2b15f1335646243b04f0a0f6519dbc54da39ab5 100644 (file)
@@ -422,7 +422,7 @@ static int aml_pinconf_get(struct pinctrl_dev *pcdev, unsigned int pin,
                        return -EINVAL;
                arg = 1;
                break;
-       case PIN_CONFIG_OUTPUT:
+       case PIN_CONFIG_LEVEL:
                ret = aml_pinconf_get_output(info, pin);
                if (ret <= 0)
                        return -EINVAL;
@@ -568,7 +568,7 @@ static int aml_pinconf_set(struct pinctrl_dev *pcdev, unsigned int pin,
                switch (param) {
                case PIN_CONFIG_DRIVE_STRENGTH_UA:
                case PIN_CONFIG_OUTPUT_ENABLE:
-               case PIN_CONFIG_OUTPUT:
+               case PIN_CONFIG_LEVEL:
                        arg = pinconf_to_config_argument(configs[i]);
                        break;
 
@@ -592,7 +592,7 @@ static int aml_pinconf_set(struct pinctrl_dev *pcdev, unsigned int pin,
                case PIN_CONFIG_OUTPUT_ENABLE:
                        ret = aml_pinconf_set_output(info, pin, arg);
                        break;
-               case PIN_CONFIG_OUTPUT:
+               case PIN_CONFIG_LEVEL:
                        ret = aml_pinconf_set_output_drive(info, pin, arg);
                        break;
                default:
index 277e9c40490d71e9b5939bf330897b8234256c47..18295b15ecd9ddd2d7ba6aea5b062f5d0d04b977 100644 (file)
@@ -360,7 +360,7 @@ static int meson_pinconf_set(struct pinctrl_dev *pcdev, unsigned int pin,
                switch (param) {
                case PIN_CONFIG_DRIVE_STRENGTH_UA:
                case PIN_CONFIG_OUTPUT_ENABLE:
-               case PIN_CONFIG_OUTPUT:
+               case PIN_CONFIG_LEVEL:
                        arg = pinconf_to_config_argument(configs[i]);
                        break;
 
@@ -384,7 +384,7 @@ static int meson_pinconf_set(struct pinctrl_dev *pcdev, unsigned int pin,
                case PIN_CONFIG_OUTPUT_ENABLE:
                        ret = meson_pinconf_set_output(pc, pin, arg);
                        break;
-               case PIN_CONFIG_OUTPUT:
+               case PIN_CONFIG_LEVEL:
                        ret = meson_pinconf_set_output_drive(pc, pin, arg);
                        break;
                default:
@@ -502,7 +502,7 @@ static int meson_pinconf_get(struct pinctrl_dev *pcdev, unsigned int pin,
                        return -EINVAL;
                arg = 1;
                break;
-       case PIN_CONFIG_OUTPUT:
+       case PIN_CONFIG_LEVEL:
                ret = meson_pinconf_get_output(pc, pin);
                if (ret <= 0)
                        return -EINVAL;
index 7b5f94d8cb23cd85a6816019569192c411892ede..fc7ebeda8440eb95f07d5f6e255caa0fe1c3e78b 100644 (file)
@@ -860,8 +860,8 @@ static int abx500_pin_config_set(struct pinctrl_dev *pctldev,
 
                dev_dbg(chip->parent, "pin %d [%#lx]: %s %s\n",
                        pin, configs[i],
-                       (param == PIN_CONFIG_OUTPUT) ? "output " : "input",
-                       (param == PIN_CONFIG_OUTPUT) ?
+                       (param == PIN_CONFIG_LEVEL) ? "output " : "input",
+                       (param == PIN_CONFIG_LEVEL) ?
                        str_high_low(argument) :
                        (argument ? "pull up" : "pull down"));
 
@@ -907,7 +907,7 @@ static int abx500_pin_config_set(struct pinctrl_dev *pctldev,
                        ret = abx500_gpio_direction_input(chip, offset);
                        break;
 
-               case PIN_CONFIG_OUTPUT:
+               case PIN_CONFIG_LEVEL:
                        ret = abx500_gpio_direction_output(chip, offset,
                                argument);
                        break;
index c2ca71ebb9736d1b3043fa6626767811a67e61f2..7f45c2897c3f270430ef7ac34ef064b2e2c58abc 100644 (file)
@@ -1700,13 +1700,13 @@ static int npcm7xx_config_get(struct pinctrl_dev *pctldev, unsigned int pin,
                else if (param == PIN_CONFIG_BIAS_PULL_DOWN)
                        rc = (!pu && pd);
                break;
-       case PIN_CONFIG_OUTPUT:
+       case PIN_CONFIG_LEVEL:
        case PIN_CONFIG_INPUT_ENABLE:
                ie = ioread32(bank->base + NPCM7XX_GP_N_IEM) & pinmask;
                oe = ioread32(bank->base + NPCM7XX_GP_N_OE) & pinmask;
                if (param == PIN_CONFIG_INPUT_ENABLE)
                        rc = (ie && !oe);
-               else if (param == PIN_CONFIG_OUTPUT)
+               else if (param == PIN_CONFIG_LEVEL)
                        rc = (!ie && oe);
                break;
        case PIN_CONFIG_DRIVE_PUSH_PULL:
@@ -1765,7 +1765,7 @@ static int npcm7xx_config_set_one(struct npcm7xx_pinctrl *npcm,
                iowrite32(gpio, bank->base + NPCM7XX_GP_N_OEC);
                bank->direction_input(&bank->chip.gc, pin % bank->chip.gc.ngpio);
                break;
-       case PIN_CONFIG_OUTPUT:
+       case PIN_CONFIG_LEVEL:
                bank->direction_output(&bank->chip.gc, pin % bank->chip.gc.ngpio, arg);
                iowrite32(gpio, bank->base + NPCM7XX_GP_N_OES);
                break;
index 0f155a685bbae774129aa55b83865e546314e81c..920dd207792596055d6f6da9403a9b7516531277 100644 (file)
@@ -2187,13 +2187,13 @@ static int npcm8xx_config_get(struct pinctrl_dev *pctldev, unsigned int pin,
                else if (param == PIN_CONFIG_BIAS_PULL_DOWN)
                        rc = !pu && pd;
                break;
-       case PIN_CONFIG_OUTPUT:
+       case PIN_CONFIG_LEVEL:
        case PIN_CONFIG_INPUT_ENABLE:
                ie = ioread32(bank->base + NPCM8XX_GP_N_IEM) & pinmask;
                oe = ioread32(bank->base + NPCM8XX_GP_N_OE) & pinmask;
                if (param == PIN_CONFIG_INPUT_ENABLE)
                        rc = (ie && !oe);
-               else if (param == PIN_CONFIG_OUTPUT)
+               else if (param == PIN_CONFIG_LEVEL)
                        rc = (!ie && oe);
                break;
        case PIN_CONFIG_DRIVE_PUSH_PULL:
@@ -2251,7 +2251,7 @@ static int npcm8xx_config_set_one(struct npcm8xx_pinctrl *npcm,
                iowrite32(gpio, bank->base + NPCM8XX_GP_N_OEC);
                bank->direction_input(&bank->chip.gc, pin % bank->chip.gc.ngpio);
                break;
-       case PIN_CONFIG_OUTPUT:
+       case PIN_CONFIG_LEVEL:
                bank->direction_output(&bank->chip.gc, pin % bank->chip.gc.ngpio, arg);
                iowrite32(gpio, bank->base + NPCM8XX_GP_N_OES);
                break;
index d67838afb08574c3fd95868bcec01e66a5082f2a..5de6ff62c69bdbb035a33c3c6848f617b94c68d9 100644 (file)
@@ -48,7 +48,7 @@ static const struct pin_config_item conf_items[] = {
        PCONFDUMP(PIN_CONFIG_INPUT_SCHMITT_ENABLE, "input schmitt enabled", NULL, false),
        PCONFDUMP(PIN_CONFIG_MODE_LOW_POWER, "pin low power", "mode", true),
        PCONFDUMP(PIN_CONFIG_OUTPUT_ENABLE, "output enabled", NULL, false),
-       PCONFDUMP(PIN_CONFIG_OUTPUT, "pin output", "level", true),
+       PCONFDUMP(PIN_CONFIG_LEVEL, "pin output", "level", true),
        PCONFDUMP(PIN_CONFIG_OUTPUT_IMPEDANCE_OHMS, "output impedance", "ohms", true),
        PCONFDUMP(PIN_CONFIG_POWER_SOURCE, "pin power source", "selector", true),
        PCONFDUMP(PIN_CONFIG_SLEEP_HARDWARE_STATE, "sleep hardware state", NULL, false),
@@ -183,9 +183,9 @@ static const struct pinconf_generic_params dt_params[] = {
        { "low-power-enable", PIN_CONFIG_MODE_LOW_POWER, 1 },
        { "output-disable", PIN_CONFIG_OUTPUT_ENABLE, 0 },
        { "output-enable", PIN_CONFIG_OUTPUT_ENABLE, 1 },
-       { "output-high", PIN_CONFIG_OUTPUT, 1, },
+       { "output-high", PIN_CONFIG_LEVEL, 1, },
        { "output-impedance-ohms", PIN_CONFIG_OUTPUT_IMPEDANCE_OHMS, 0 },
-       { "output-low", PIN_CONFIG_OUTPUT, 0, },
+       { "output-low", PIN_CONFIG_LEVEL, 0, },
        { "power-source", PIN_CONFIG_POWER_SOURCE, 0 },
        { "sleep-hardware-state", PIN_CONFIG_SLEEP_HARDWARE_STATE, 0 },
        { "slew-rate", PIN_CONFIG_SLEW_RATE, 0 },
index 35ea3414cb96d7ea1104907e13161cf19b8a0d3d..ec5351fc282e20646983cea68826b5ce9de00beb 100644 (file)
@@ -862,7 +862,7 @@ static int atmel_conf_pin_config_group_set(struct pinctrl_dev *pctldev,
                                conf |= ATMEL_PIO_IFSCEN_MASK;
                        }
                        break;
-               case PIN_CONFIG_OUTPUT:
+               case PIN_CONFIG_LEVEL:
                        conf |= ATMEL_PIO_DIR_MASK;
                        bank = ATMEL_PIO_BANK(pin_id);
                        pin = ATMEL_PIO_LINE(pin_id);
index 890b83fddea3c5c860499c364e109ba33bf52387..479553a79216145acf036ea2f6ae70410215999f 100644 (file)
@@ -215,7 +215,7 @@ static int aw9523_pcfg_param_to_reg(enum pin_config_param pcp, int pin, u8 *r)
        case PIN_CONFIG_OUTPUT_ENABLE:
                reg = AW9523_REG_CONF_STATE(pin);
                break;
-       case PIN_CONFIG_OUTPUT:
+       case PIN_CONFIG_LEVEL:
                reg = AW9523_REG_OUT_STATE(pin);
                break;
        default:
@@ -249,7 +249,7 @@ static int aw9523_pconf_get(struct pinctrl_dev *pctldev, unsigned int pin,
        switch (param) {
        case PIN_CONFIG_BIAS_PULL_UP:
        case PIN_CONFIG_INPUT_ENABLE:
-       case PIN_CONFIG_OUTPUT:
+       case PIN_CONFIG_LEVEL:
                val &= BIT(regbit);
                break;
        case PIN_CONFIG_BIAS_PULL_DOWN:
@@ -301,7 +301,7 @@ static int aw9523_pconf_set(struct pinctrl_dev *pctldev, unsigned int pin,
                        goto end;
 
                switch (param) {
-               case PIN_CONFIG_OUTPUT:
+               case PIN_CONFIG_LEVEL:
                        /* First, enable pin output */
                        rc = regmap_update_bits(awi->regmap,
                                                AW9523_REG_CONF_STATE(pin),
index cf7f80497fdeaf72227416e976719ffea6981cca..a4b04bf6d081f6b26acfe887ea536a50e69b45b3 100644 (file)
@@ -808,7 +808,7 @@ static int cy8c95x0_gpio_get_pincfg(struct cy8c95x0_pinctrl *chip,
        case PIN_CONFIG_MODE_PWM:
                reg = CY8C95X0_SELPWM;
                break;
-       case PIN_CONFIG_OUTPUT:
+       case PIN_CONFIG_LEVEL:
                reg = CY8C95X0_OUTPUT;
                break;
        case PIN_CONFIG_OUTPUT_ENABLE:
index e5b24fab12e11e443df25ffeb7b70d7c1a03c6bc..c7f14546de0528de787504b40b745b72398ac84a 100644 (file)
@@ -4264,7 +4264,7 @@ static int ingenic_pinconf_set(struct pinctrl_dev *pctldev, unsigned int pin,
                case PIN_CONFIG_BIAS_PULL_UP:
                case PIN_CONFIG_BIAS_PULL_DOWN:
                case PIN_CONFIG_INPUT_SCHMITT_ENABLE:
-               case PIN_CONFIG_OUTPUT:
+               case PIN_CONFIG_LEVEL:
                case PIN_CONFIG_SLEW_RATE:
                        continue;
                default:
@@ -4305,7 +4305,7 @@ static int ingenic_pinconf_set(struct pinctrl_dev *pctldev, unsigned int pin,
                        ingenic_set_schmitt_trigger(jzpc, pin, arg);
                        break;
 
-               case PIN_CONFIG_OUTPUT:
+               case PIN_CONFIG_LEVEL:
                        ret = pinctrl_gpio_direction_output(jzpc->gc,
                                                        pin - jzpc->gc->base);
                        if (ret)
index 66c04120c29deccf53b21cbf8705f1d10c74ace5..ddd6d6bfd51399cd0467a451274bc38cbf9bbbee 100644 (file)
@@ -551,7 +551,7 @@ static int k210_pinconf_set_param(struct pinctrl_dev *pctldev,
                else
                        val &= ~K210_PC_ST;
                break;
-       case PIN_CONFIG_OUTPUT:
+       case PIN_CONFIG_LEVEL:
                k210_pinmux_set_pin_function(pctldev, pin, K210_PCF_CONSTANT);
                val = readl(&pdata->fpioa->pins[pin]);
                val |= K210_PC_MODE_OUT;
index 069cc665a4023a67b40b94b68dec8dde37776755..b6363f3cdce94efa86c563fe6815a2ff11df1816 100644 (file)
@@ -371,7 +371,7 @@ static int sgpio_pinconf_get(struct pinctrl_dev *pctldev,
                val = !bank->is_input;
                break;
 
-       case PIN_CONFIG_OUTPUT:
+       case PIN_CONFIG_LEVEL:
                if (bank->is_input)
                        return -EINVAL;
                val = sgpio_output_get(priv, &addr);
@@ -402,7 +402,7 @@ static int sgpio_pinconf_set(struct pinctrl_dev *pctldev, unsigned int pin,
                arg = pinconf_to_config_argument(configs[cfg]);
 
                switch (param) {
-               case PIN_CONFIG_OUTPUT:
+               case PIN_CONFIG_LEVEL:
                        if (bank->is_input)
                                return -EINVAL;
                        err = sgpio_output_set(priv, &addr, arg);
index b82bf83fed25b6aaaa90959198bbe6c129c621e7..70da3f37567a5c3ba9283bda351ccde07736f01f 100644 (file)
@@ -1656,7 +1656,7 @@ static int ocelot_pinconf_get(struct pinctrl_dev *pctldev,
                        return err;
                break;
 
-       case PIN_CONFIG_OUTPUT:
+       case PIN_CONFIG_LEVEL:
                err = regmap_read(info->map, REG(OCELOT_GPIO_OUT, info, pin),
                                  &val);
                if (err)
@@ -1735,7 +1735,7 @@ static int ocelot_pinconf_set(struct pinctrl_dev *pctldev, unsigned int pin,
 
                case PIN_CONFIG_OUTPUT_ENABLE:
                case PIN_CONFIG_INPUT_ENABLE:
-               case PIN_CONFIG_OUTPUT:
+               case PIN_CONFIG_LEVEL:
                        p = pin % 32;
                        if (arg)
                                regmap_write(info->map,
index 37c2bf752154d487b7ebde82b83f657a0123c698..e8b481e87c779291a69490de1892fbb7ec9c45f1 100644 (file)
@@ -1905,7 +1905,7 @@ static int pic32_pinconf_get(struct pinctrl_dev *pctldev, unsigned pin,
        case PIN_CONFIG_INPUT_ENABLE:
                arg = !!(readl(bank->reg_base + TRIS_REG) & mask);
                break;
-       case PIN_CONFIG_OUTPUT:
+       case PIN_CONFIG_LEVEL:
                arg = !(readl(bank->reg_base + TRIS_REG) & mask);
                break;
        default:
@@ -1960,7 +1960,7 @@ static int pic32_pinconf_set(struct pinctrl_dev *pctldev, unsigned pin,
                case PIN_CONFIG_INPUT_ENABLE:
                        pic32_gpio_direction_input(&bank->gpio_chip, offset);
                        break;
-               case PIN_CONFIG_OUTPUT:
+               case PIN_CONFIG_LEVEL:
                        pic32_gpio_direction_output(&bank->gpio_chip,
                                                    offset, arg);
                        break;
index 3acf770316c1aa4f44ca6365d998ce6307ee0514..22f576337faa9c90a1c84a92cac678e8b58937be 100644 (file)
@@ -541,7 +541,7 @@ static int rk805_pinconf_get(struct pinctrl_dev *pctldev,
        u32 arg = 0;
 
        switch (param) {
-       case PIN_CONFIG_OUTPUT:
+       case PIN_CONFIG_LEVEL:
        case PIN_CONFIG_INPUT_ENABLE:
                arg = rk805_gpio_get(&pci->gpio_chip, pin);
                break;
@@ -568,7 +568,7 @@ static int rk805_pinconf_set(struct pinctrl_dev *pctldev,
                arg = pinconf_to_config_argument(configs[i]);
 
                switch (param) {
-               case PIN_CONFIG_OUTPUT:
+               case PIN_CONFIG_LEVEL:
                        rk805_gpio_set(&pci->gpio_chip, pin, arg);
                        rk805_pmx_gpio_set_direction(pctldev, NULL, pin, false);
                        break;
index 930c454e0cec7d88d66b2967fe8f14c915429e63..7a68a6237649c175dee815363b754b9f3b82f47d 100644 (file)
@@ -3272,7 +3272,7 @@ static int rockchip_pinconf_set(struct pinctrl_dev *pctldev, unsigned int pin,
                param = pinconf_to_config_param(configs[i]);
                arg = pinconf_to_config_argument(configs[i]);
 
-               if (param == PIN_CONFIG_OUTPUT || param == PIN_CONFIG_INPUT_ENABLE) {
+               if (param == PIN_CONFIG_LEVEL || param == PIN_CONFIG_INPUT_ENABLE) {
                        /*
                         * Check for gpio driver not being probed yet.
                         * The lock makes sure that either gpio-probe has completed
@@ -3313,7 +3313,7 @@ static int rockchip_pinconf_set(struct pinctrl_dev *pctldev, unsigned int pin,
                        if (rc)
                                return rc;
                        break;
-               case PIN_CONFIG_OUTPUT:
+               case PIN_CONFIG_LEVEL:
                        rc = rockchip_set_mux(bank, pin - bank->pin_base,
                                              RK_FUNC_GPIO);
                        if (rc != RK_FUNC_GPIO)
@@ -3392,7 +3392,7 @@ static int rockchip_pinconf_get(struct pinctrl_dev *pctldev, unsigned int pin,
 
                arg = 1;
                break;
-       case PIN_CONFIG_OUTPUT:
+       case PIN_CONFIG_LEVEL:
                rc = rockchip_get_mux(bank, pin - bank->pin_base);
                if (rc != RK_FUNC_GPIO)
                        return -EINVAL;
index 605105aa0cbc7fcb9c15e23a5bac1242e15ec667..ffc2f0b460a64192c15d0dd4d0af244b1b521c81 100644 (file)
@@ -1440,7 +1440,7 @@ static int rp1_pinconf_set(struct pinctrl_dev *pctldev, unsigned int offset,
                        rp1_output_enable(pin, arg);
                        break;
 
-               case PIN_CONFIG_OUTPUT:
+               case PIN_CONFIG_LEVEL:
                        rp1_set_value(pin, arg);
                        rp1_set_dir(pin, RP1_DIR_OUTPUT);
                        rp1_set_fsel(pin, RP1_FSEL_GPIO);
index 383681041e4c05fe3c7d15dc58a7dbf783dae3c3..d14528b9aa31ef28812e106e5f8e28ddce430226 100644 (file)
@@ -253,7 +253,7 @@ static int pinctrl_scmi_map_pinconf_type(enum pin_config_param param,
        case PIN_CONFIG_MODE_LOW_POWER:
                *type = SCMI_PIN_LOW_POWER_MODE;
                break;
-       case PIN_CONFIG_OUTPUT:
+       case PIN_CONFIG_LEVEL:
                *type = SCMI_PIN_OUTPUT_VALUE;
                break;
        case PIN_CONFIG_OUTPUT_ENABLE:
index c89b99003b7111c98d30d84c5722d1a4bbbd368a..03ee13844b50736d85586d166069cbaa2c9556a1 100644 (file)
@@ -267,7 +267,7 @@ static int stmfx_pinconf_get(struct pinctrl_dev *pctldev,
                if ((!dir && !type) || (dir && type))
                        arg = 1;
                break;
-       case PIN_CONFIG_OUTPUT:
+       case PIN_CONFIG_LEVEL:
                if (dir)
                        return -EINVAL;
 
@@ -334,7 +334,7 @@ static int stmfx_pinconf_set(struct pinctrl_dev *pctldev, unsigned int pin,
                        if (ret)
                                return ret;
                        break;
-               case PIN_CONFIG_OUTPUT:
+               case PIN_CONFIG_LEVEL:
                        ret = stmfx_gpio_direction_output(&pctl->gpio_chip,
                                                          pin, arg);
                        if (ret)
index b613568b42b73d1c1b220b641e292055e23f4de2..1d6760ffe809a22f5aaff5ac5903327ad701d119 100644 (file)
@@ -611,7 +611,7 @@ static int sx150x_pinconf_get(struct pinctrl_dev *pctldev, unsigned int pin,
        if (sx150x_pin_is_oscio(pctl, pin)) {
                switch (param) {
                case PIN_CONFIG_DRIVE_PUSH_PULL:
-               case PIN_CONFIG_OUTPUT:
+               case PIN_CONFIG_LEVEL:
                        ret = regmap_read(pctl->regmap,
                                          pctl->data->pri.x789.reg_clock,
                                          &data);
@@ -705,7 +705,7 @@ static int sx150x_pinconf_get(struct pinctrl_dev *pctldev, unsigned int pin,
                }
                break;
 
-       case PIN_CONFIG_OUTPUT:
+       case PIN_CONFIG_LEVEL:
                ret = sx150x_gpio_get_direction(&pctl->gpio, pin);
                if (ret < 0)
                        return ret;
@@ -744,7 +744,7 @@ static int sx150x_pinconf_set(struct pinctrl_dev *pctldev, unsigned int pin,
                arg = pinconf_to_config_argument(configs[i]);
 
                if (sx150x_pin_is_oscio(pctl, pin)) {
-                       if (param == PIN_CONFIG_OUTPUT) {
+                       if (param == PIN_CONFIG_LEVEL) {
                                ret = sx150x_gpio_direction_output(&pctl->gpio,
                                                                   pin, arg);
                                if (ret < 0)
@@ -816,7 +816,7 @@ static int sx150x_pinconf_set(struct pinctrl_dev *pctldev, unsigned int pin,
 
                        break;
 
-               case PIN_CONFIG_OUTPUT:
+               case PIN_CONFIG_LEVEL:
                        ret = sx150x_gpio_direction_output(&pctl->gpio,
                                                           pin, arg);
                        if (ret < 0)
index 54c77e0b96e91de8d96ff3cbd0ca88fadc6d55f6..28eb92a2b249fe1bac06684a0d9c43ae1b640914 100644 (file)
@@ -174,7 +174,7 @@ static int lpi_config_get(struct pinctrl_dev *pctldev,
                        arg = 1;
                break;
        case PIN_CONFIG_INPUT_ENABLE:
-       case PIN_CONFIG_OUTPUT:
+       case PIN_CONFIG_LEVEL:
                if (is_out)
                        arg = 1;
                break;
@@ -252,7 +252,7 @@ static int lpi_config_set(struct pinctrl_dev *pctldev, unsigned int group,
                case PIN_CONFIG_INPUT_ENABLE:
                        output_enabled = false;
                        break;
-               case PIN_CONFIG_OUTPUT:
+               case PIN_CONFIG_LEVEL:
                        output_enabled = true;
                        value = arg;
                        break;
@@ -314,7 +314,7 @@ static int lpi_gpio_direction_output(struct gpio_chip *chip,
        struct lpi_pinctrl *state = gpiochip_get_data(chip);
        unsigned long config;
 
-       config = pinconf_to_config_packed(PIN_CONFIG_OUTPUT, val);
+       config = pinconf_to_config_packed(PIN_CONFIG_LEVEL, val);
 
        return lpi_config_set(state->ctrl, pin, &config, 1);
 }
@@ -332,7 +332,7 @@ static int lpi_gpio_set(struct gpio_chip *chip, unsigned int pin, int value)
        struct lpi_pinctrl *state = gpiochip_get_data(chip);
        unsigned long config;
 
-       config = pinconf_to_config_packed(PIN_CONFIG_OUTPUT, value);
+       config = pinconf_to_config_packed(PIN_CONFIG_LEVEL, value);
 
        return lpi_config_set(state->ctrl, pin, &config, 1);
 }
index 1751d838ce95d6138c824b90098f74891dec7656..67525d542c5b7b6459457d5a1c3cd47071439cfe 100644 (file)
@@ -295,7 +295,7 @@ static int msm_config_reg(struct msm_pinctrl *pctrl,
                *bit = g->drv_bit;
                *mask = 7;
                break;
-       case PIN_CONFIG_OUTPUT:
+       case PIN_CONFIG_LEVEL:
        case PIN_CONFIG_INPUT_ENABLE:
        case PIN_CONFIG_OUTPUT_ENABLE:
                *bit = g->oe_bit;
@@ -385,7 +385,7 @@ static int msm_config_group_get(struct pinctrl_dev *pctldev,
        case PIN_CONFIG_DRIVE_STRENGTH:
                arg = msm_regval_to_drive(arg);
                break;
-       case PIN_CONFIG_OUTPUT:
+       case PIN_CONFIG_LEVEL:
                /* Pin is not output */
                if (!arg)
                        return -EINVAL;
@@ -464,7 +464,7 @@ static int msm_config_group_set(struct pinctrl_dev *pctldev,
                        else
                                arg = (arg / 2) - 1;
                        break;
-               case PIN_CONFIG_OUTPUT:
+               case PIN_CONFIG_LEVEL:
                        /* set output value */
                        raw_spin_lock_irqsave(&pctrl->lock, flags);
                        val = msm_readl_io(pctrl, g);
index b7b15874e488a1406994e483c845dd4608f45538..485b68cc93f8edac07c15aad50ff5c9c7894d8bc 100644 (file)
@@ -438,7 +438,7 @@ static int pmic_gpio_config_get(struct pinctrl_dev *pctldev,
        case PIN_CONFIG_OUTPUT_ENABLE:
                arg = pad->output_enabled;
                break;
-       case PIN_CONFIG_OUTPUT:
+       case PIN_CONFIG_LEVEL:
                arg = pad->out_value;
                break;
        case PMIC_GPIO_CONF_PULL_UP:
@@ -530,7 +530,7 @@ static int pmic_gpio_config_set(struct pinctrl_dev *pctldev, unsigned int pin,
                case PIN_CONFIG_OUTPUT_ENABLE:
                        pad->output_enabled = arg ? true : false;
                        break;
-               case PIN_CONFIG_OUTPUT:
+               case PIN_CONFIG_LEVEL:
                        pad->output_enabled = true;
                        pad->out_value = arg;
                        break;
@@ -737,7 +737,7 @@ static int pmic_gpio_direction_output(struct gpio_chip *chip,
        struct pmic_gpio_state *state = gpiochip_get_data(chip);
        unsigned long config;
 
-       config = pinconf_to_config_packed(PIN_CONFIG_OUTPUT, val);
+       config = pinconf_to_config_packed(PIN_CONFIG_LEVEL, val);
 
        return pmic_gpio_config_set(state->ctrl, pin, &config, 1);
 }
@@ -769,7 +769,7 @@ static int pmic_gpio_set(struct gpio_chip *chip, unsigned int pin, int value)
        struct pmic_gpio_state *state = gpiochip_get_data(chip);
        unsigned long config;
 
-       config = pinconf_to_config_packed(PIN_CONFIG_OUTPUT, value);
+       config = pinconf_to_config_packed(PIN_CONFIG_LEVEL, value);
 
        return pmic_gpio_config_set(state->ctrl, pin, &config, 1);
 }
index 22d76b1013a313fa241dded006359dcd324deef8..64f8024a865cd3fc18f0e5ebff56f82f970d53b6 100644 (file)
@@ -370,7 +370,7 @@ static int pmic_mpp_config_get(struct pinctrl_dev *pctldev,
                        return -EINVAL;
                arg = 1;
                break;
-       case PIN_CONFIG_OUTPUT:
+       case PIN_CONFIG_LEVEL:
                arg = pad->out_value;
                break;
        case PMIC_MPP_CONF_DTEST_SELECTOR:
@@ -447,7 +447,7 @@ static int pmic_mpp_config_set(struct pinctrl_dev *pctldev, unsigned int pin,
                case PIN_CONFIG_INPUT_ENABLE:
                        pad->input_enabled = arg ? true : false;
                        break;
-               case PIN_CONFIG_OUTPUT:
+               case PIN_CONFIG_LEVEL:
                        pad->output_enabled = true;
                        pad->out_value = arg;
                        break;
@@ -576,7 +576,7 @@ static int pmic_mpp_direction_output(struct gpio_chip *chip,
        struct pmic_mpp_state *state = gpiochip_get_data(chip);
        unsigned long config;
 
-       config = pinconf_to_config_packed(PIN_CONFIG_OUTPUT, val);
+       config = pinconf_to_config_packed(PIN_CONFIG_LEVEL, val);
 
        return pmic_mpp_config_set(state->ctrl, pin, &config, 1);
 }
@@ -605,7 +605,7 @@ static int pmic_mpp_set(struct gpio_chip *chip, unsigned int pin, int value)
        struct pmic_mpp_state *state = gpiochip_get_data(chip);
        unsigned long config;
 
-       config = pinconf_to_config_packed(PIN_CONFIG_OUTPUT, value);
+       config = pinconf_to_config_packed(PIN_CONFIG_LEVEL, value);
 
        return pmic_mpp_config_set(state->ctrl, pin, &config, 1);
 }
index fb37b1c1acb41fdb608c8a233668c1c5ac00d1e2..5c966d51eda7bb661501ee530b4eb4ac966fc80a 100644 (file)
@@ -282,7 +282,7 @@ static int pm8xxx_pin_config_get(struct pinctrl_dev *pctldev,
                        return -EINVAL;
                arg = 1;
                break;
-       case PIN_CONFIG_OUTPUT:
+       case PIN_CONFIG_LEVEL:
                if (pin->mode & PM8XXX_GPIO_MODE_OUTPUT)
                        arg = pin->output_value;
                else
@@ -364,7 +364,7 @@ static int pm8xxx_pin_config_set(struct pinctrl_dev *pctldev,
                        pin->mode = PM8XXX_GPIO_MODE_INPUT;
                        banks |= BIT(0) | BIT(1);
                        break;
-               case PIN_CONFIG_OUTPUT:
+               case PIN_CONFIG_LEVEL:
                        pin->mode = PM8XXX_GPIO_MODE_OUTPUT;
                        pin->output_value = !!arg;
                        banks |= BIT(0) | BIT(1);
index 6103849af042d6d91c25d5910f13bb1ef8fb9acf..7970fa6e15579e8b7fb79a89589c4b12005c9ba8 100644 (file)
@@ -337,7 +337,7 @@ static int pm8xxx_pin_config_get(struct pinctrl_dev *pctldev,
        case PIN_CONFIG_INPUT_ENABLE:
                arg = pin->input;
                break;
-       case PIN_CONFIG_OUTPUT:
+       case PIN_CONFIG_LEVEL:
                arg = pin->output_value;
                break;
        case PIN_CONFIG_POWER_SOURCE:
@@ -392,7 +392,7 @@ static int pm8xxx_pin_config_set(struct pinctrl_dev *pctldev,
                case PIN_CONFIG_INPUT_ENABLE:
                        pin->input = true;
                        break;
-               case PIN_CONFIG_OUTPUT:
+               case PIN_CONFIG_LEVEL:
                        pin->output = true;
                        pin->output_value = !!arg;
                        break;
index 70f22e0ef307a02d5b11d6626d297a619f5b82e9..f24e5915cbe4b4132070475b466fee4166bc7460 100644 (file)
@@ -933,7 +933,7 @@ static int rza1_parse_pinmux_node(struct rza1_pinctrl *rza1_pctl,
                case PIN_CONFIG_INPUT_ENABLE:
                        pinmux_flags |= MUX_FLAGS_SWIO_INPUT;
                        break;
-               case PIN_CONFIG_OUTPUT: /* for DT backwards compatibility */
+               case PIN_CONFIG_LEVEL:  /* for DT backwards compatibility */
                case PIN_CONFIG_OUTPUT_ENABLE:
                        pinmux_flags |= MUX_FLAGS_SWIO_OUTPUT;
                        break;
index 823c8fe758e2c00d270d23b63f9f4a87df492a84..3ebb468de830db89a226e751fab48fad670c89b4 100644 (file)
@@ -1236,7 +1236,7 @@ static int stm32_pconf_parse_conf(struct pinctrl_dev *pctldev,
        case PIN_CONFIG_BIAS_PULL_DOWN:
                ret = stm32_pconf_set_bias(bank, offset, 2);
                break;
-       case PIN_CONFIG_OUTPUT:
+       case PIN_CONFIG_LEVEL:
                __stm32_gpio_set(bank, offset, arg);
                ret = stm32_pmx_gpio_set_direction(pctldev, range, pin, false);
                break;
index 3e924aa86cc2faa75eb2fc67b7394d7639a5f898..fabe7efaa837a4fb2220039e12dca102dc6ba33b 100644 (file)
@@ -488,7 +488,7 @@ static int sppctl_gpio_set_config(struct gpio_chip *chip, unsigned int offset,
        case PIN_CONFIG_INPUT_ENABLE:
                break;
 
-       case PIN_CONFIG_OUTPUT:
+       case PIN_CONFIG_LEVEL:
                return sppctl_gpio_direction_output(chip, offset, 0);
 
        case PIN_CONFIG_PERSIST_STATE:
@@ -580,7 +580,7 @@ static int sppctl_pin_config_get(struct pinctrl_dev *pctldev, unsigned int pin,
                arg = 0;
                break;
 
-       case PIN_CONFIG_OUTPUT:
+       case PIN_CONFIG_LEVEL:
                if (!sppctl_first_get(&pctl->spp_gchip->chip, pin))
                        return -EINVAL;
                if (!sppctl_master_get(&pctl->spp_gchip->chip, pin))
index 1bcf071b860ebbaf60351a8d17369ba6cd3eff1b..d9245ecec71dc6f580ad4768695349f74c92d209 100644 (file)
@@ -88,9 +88,13 @@ struct pinctrl_map;
  *     passed in the argument on a custom form, else just use argument 1
  *     to indicate low power mode, argument 0 turns low power mode off.
  * @PIN_CONFIG_MODE_PWM: this will configure the pin for PWM
- * @PIN_CONFIG_OUTPUT: this will configure the pin as an output and drive a
- *     value on the line. Use argument 1 to indicate high level, argument 0 to
- *     indicate low level. (Please see Documentation/driver-api/pin-control.rst,
+ * @PIN_CONFIG_LEVEL: setting this will configure the pin as an output and
+ *     drive a value on the line. Use argument 1 to indicate high level,
+ *     argument 0 to indicate low level. Conversely the value of the line
+ *     can be read using this parameter, if and only if that value can be
+ *     represented as a binary 0 or 1 where 0 indicate a low voltage level
+ *     and 1 indicate a high voltage level.
+ *     (Please see Documentation/driver-api/pin-control.rst,
  *     section "GPIO mode pitfalls" for a discussion around this parameter.)
  * @PIN_CONFIG_OUTPUT_ENABLE: this will enable the pin's output mode
  *     without driving a value there. For most platforms this reduces to
@@ -137,7 +141,7 @@ enum pin_config_param {
        PIN_CONFIG_INPUT_SCHMITT_UV,
        PIN_CONFIG_MODE_LOW_POWER,
        PIN_CONFIG_MODE_PWM,
-       PIN_CONFIG_OUTPUT,
+       PIN_CONFIG_LEVEL,
        PIN_CONFIG_OUTPUT_ENABLE,
        PIN_CONFIG_OUTPUT_IMPEDANCE_OHMS,
        PIN_CONFIG_PERSIST_STATE,
index 9ba14c09c07ffe5115c5494b05c558a5698341f3..3cca750857b68961115e1cde651dc5a6041b233b 100644 (file)
@@ -69,7 +69,7 @@ static int cirrus_scodec_test_gpio_set_config(struct gpio_chip *gc,
                                              unsigned long config)
 {
        switch (pinconf_to_config_param(config)) {
-       case PIN_CONFIG_OUTPUT:
+       case PIN_CONFIG_LEVEL:
        case PIN_CONFIG_OUTPUT_ENABLE:
                return -EOPNOTSUPP;
        default: