]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
drm/panel: ilitek-ili9882t: If prepare fails, disable GPIO before regulators
authorDouglas Anderson <dianders@chromium.org>
Fri, 17 May 2024 21:36:39 +0000 (14:36 -0700)
committerNeil Armstrong <neil.armstrong@linaro.org>
Tue, 21 May 2024 08:01:20 +0000 (10:01 +0200)
The enable GPIO should clearly be set low before turning off
regulators. That matches both the inverse order that things were
enabled and also the order in unprepare().

Fixes: e2450d32e5fb ("drm/panel: ili9882t: Break out as separate driver")
Signed-off-by: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Link: https://lore.kernel.org/r/20240517143643.4.Ieb0179065847972a0f13e9a8574a80a5f65f3338@changeid
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20240517143643.4.Ieb0179065847972a0f13e9a8574a80a5f65f3338@changeid
drivers/gpu/drm/panel/panel-ilitek-ili9882t.c

index 830d7cfbe857b8eb8e9b57d5f890b5168578acc3..a2ea25bb662468aca6895055ee6be221e576f7c4 100644 (file)
@@ -495,13 +495,13 @@ static int ili9882t_prepare(struct drm_panel *panel)
        return 0;
 
 poweroff:
+       gpiod_set_value(ili->enable_gpio, 0);
        regulator_disable(ili->avee);
 poweroffavdd:
        regulator_disable(ili->avdd);
 poweroff1v8:
        usleep_range(5000, 7000);
        regulator_disable(ili->pp1800);
-       gpiod_set_value(ili->enable_gpio, 0);
 
        return ret;
 }