Message ID | 20241104093609.156059-5-andriy.shevchenko@linux.intel.com |
---|---|
State | New |
Headers | show |
Series | gpio: Get rid of deprecated GPIOF_ACTIVE_LOW | expand |
On Mon, Nov 4, 2024 at 10:36 AM Andy Shevchenko <andriy.shevchenko@linux.intel.com> wrote: > Avoid using GPIOF_ACTIVE_LOW as it's deprecated and subject to remove. > > Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Looks right to me, some testing would be even better because I never trust these flags to get right. Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Yours, Linus Walleij
On Fri, Nov 08, 2024 at 09:28:19AM +0100, Linus Walleij wrote: > On Mon, Nov 4, 2024 at 10:36 AM Andy Shevchenko > <andriy.shevchenko@linux.intel.com> wrote: > > > Avoid using GPIOF_ACTIVE_LOW as it's deprecated and subject to remove. > > > > Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> > > Looks right to me, some testing would be even better > because I never trust these flags to get right. I also would like to have this, but seems the only odd fixer was active ca. 2023 last time, I'm not sure we may hear from Dominik in time, otherwise the series will be postponed for unknown period of time, which I do not prefer, rather I will fix any regressions later (but I doubt there are here).
diff --git a/drivers/pcmcia/soc_common.c b/drivers/pcmcia/soc_common.c index 61b0c8952bb5..1deb9960db34 100644 --- a/drivers/pcmcia/soc_common.c +++ b/drivers/pcmcia/soc_common.c @@ -204,14 +204,8 @@ static int soc_pcmcia_hw_init(struct soc_pcmcia_socket *skt) for (i = 0; i < ARRAY_SIZE(skt->stat); i++) { if (gpio_is_valid(skt->stat[i].gpio)) { - unsigned long flags = GPIOF_IN; - - /* CD is active low by default */ - if (i == SOC_STAT_CD) - flags |= GPIOF_ACTIVE_LOW; - ret = devm_gpio_request_one(skt->socket.dev.parent, - skt->stat[i].gpio, flags, + skt->stat[i].gpio, GPIOF_IN, skt->stat[i].name); if (ret) { __soc_pcmcia_hw_shutdown(skt, i); @@ -219,6 +213,10 @@ static int soc_pcmcia_hw_init(struct soc_pcmcia_socket *skt) } skt->stat[i].desc = gpio_to_desc(skt->stat[i].gpio); + + /* CD is active low by default */ + if ((i == SOC_STAT_CD) ^ gpiod_is_active_low(skt->stat[i].desc)) + gpiod_toggle_active_low(skt->stat[i].desc); } if (i < SOC_STAT_VS1 && skt->stat[i].desc) {
Avoid using GPIOF_ACTIVE_LOW as it's deprecated and subject to remove. Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> --- drivers/pcmcia/soc_common.c | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-)