]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
pinctrl: meson: amlogic-a4: mark the GPIO controller as sleeping
authorBartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>
Tue, 6 Jan 2026 08:52:53 +0000 (09:52 +0100)
committerLinus Walleij <linusw@kernel.org>
Fri, 9 Jan 2026 09:33:13 +0000 (10:33 +0100)
The GPIO controller is configured as non-sleeping but it uses generic
pinctrl helpers which use a mutex for synchronization. This will cause
lockdep splats when used together with shared GPIOs going through the
GPIO shared proxy driver.

Fixes: 6e9be3abb78c ("pinctrl: Add driver support for Amlogic SoCs")
Cc: stable@vger.kernel.org
Reported-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Closes: https://lore.kernel.org/all/CAFBinCAc7CO8gfNQakCu3LfkYXuyTd2iRpMRm8EKXSL0mwOnJw@mail.gmail.com/
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>
Reviewed-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Signed-off-by: Linus Walleij <linusw@kernel.org>
drivers/pinctrl/meson/pinctrl-amlogic-a4.c

index d9e3a8d5932a829e139a3fdc134efca3c39947f9..ded7b218e2ec72050b661299552070c96b0cc9a5 100644 (file)
@@ -893,7 +893,7 @@ static const struct gpio_chip aml_gpio_template = {
        .direction_input        = aml_gpio_direction_input,
        .direction_output       = aml_gpio_direction_output,
        .get_direction          = aml_gpio_get_direction,
-       .can_sleep              = false,
+       .can_sleep              = true,
 };
 
 static void init_bank_register_bit(struct aml_pinctrl *info,