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: 0ef94554dc40 ("drm/panel: himax-hx83102: Break out as separate driver")
Signed-off-by: Douglas Anderson <diand...@chromium.org>
---

 drivers/gpu/drm/panel/panel-himax-hx83102.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/panel/panel-himax-hx83102.c 
b/drivers/gpu/drm/panel/panel-himax-hx83102.c
index 1a6975937f30..4ac7f9d8b232 100644
--- a/drivers/gpu/drm/panel/panel-himax-hx83102.c
+++ b/drivers/gpu/drm/panel/panel-himax-hx83102.c
@@ -578,13 +578,13 @@ static int hx83102_prepare(struct drm_panel *panel)
        return 0;
 
 poweroff:
+       gpiod_set_value(ctx->enable_gpio, 0);
        regulator_disable(ctx->avee);
 poweroffavdd:
        regulator_disable(ctx->avdd);
 poweroff1v8:
        usleep_range(5000, 7000);
        regulator_disable(ctx->pp1800);
-       gpiod_set_value(ctx->enable_gpio, 0);
 
        return ret;
 }
-- 
2.45.0.rc1.225.g2a3ae87e7f-goog

Reply via email to