]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
gpio: hisi: use the BGPIOF_UNREADABLE_REG_DIR flag
authorBartosz Golaszewski <bartosz.golaszewski@linaro.org>
Mon, 25 Aug 2025 09:48:44 +0000 (11:48 +0200)
committerBartosz Golaszewski <bartosz.golaszewski@linaro.org>
Mon, 25 Aug 2025 10:05:37 +0000 (12:05 +0200)
There's no reason for this driver to touch the gpio-mmio internals, we
have a dedicated flag passed to bgpio_init() indicating to the module
that the DIR register is unreadable.

Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Link: https://lore.kernel.org/r/20250825-gpio-mmio-gpio-conv-v1-3-356b4b1d5110@linaro.org
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
drivers/gpio/gpio-hisi.c

index ef5cc654a24e2327510b872563e68fb0b9aaef71..6016e6f0ed0fb80ea670ebb575452d9ec23976fa 100644 (file)
@@ -295,7 +295,7 @@ static int hisi_gpio_probe(struct platform_device *pdev)
                         hisi_gpio->reg_base + HISI_GPIO_SWPORT_DR_CLR_WX,
                         hisi_gpio->reg_base + HISI_GPIO_SWPORT_DDR_SET_WX,
                         hisi_gpio->reg_base + HISI_GPIO_SWPORT_DDR_CLR_WX,
-                        BGPIOF_NO_SET_ON_INPUT);
+                        BGPIOF_NO_SET_ON_INPUT | BGPIOF_UNREADABLE_REG_DIR);
        if (ret) {
                dev_err(dev, "failed to init, ret = %d\n", ret);
                return ret;
@@ -303,7 +303,6 @@ static int hisi_gpio_probe(struct platform_device *pdev)
 
        hisi_gpio->chip.set_config = hisi_gpio_set_config;
        hisi_gpio->chip.ngpio = hisi_gpio->line_num;
-       hisi_gpio->chip.bgpio_dir_unreadable = 1;
        hisi_gpio->chip.base = -1;
 
        if (hisi_gpio->irq > 0)