From: Douglas Anderson Date: Fri, 17 May 2024 21:36:39 +0000 (-0700) Subject: drm/panel: ilitek-ili9882t: If prepare fails, disable GPIO before regulators X-Git-Tag: v6.10.3~531 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=30c229ef8d2c86321e1bbe19b19ea7e2624d5ef8;p=thirdparty%2Fkernel%2Fstable.git drm/panel: ilitek-ili9882t: If prepare fails, disable GPIO before regulators [ Upstream commit 554c00181968d43426bfe68c86541b89265075de ] 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 Reviewed-by: Dmitry Baryshkov Reviewed-by: Linus Walleij Link: https://lore.kernel.org/r/20240517143643.4.Ieb0179065847972a0f13e9a8574a80a5f65f3338@changeid Signed-off-by: Neil Armstrong Link: https://patchwork.freedesktop.org/patch/msgid/20240517143643.4.Ieb0179065847972a0f13e9a8574a80a5f65f3338@changeid Signed-off-by: Sasha Levin --- diff --git a/drivers/gpu/drm/panel/panel-ilitek-ili9882t.c b/drivers/gpu/drm/panel/panel-ilitek-ili9882t.c index 267a5307041c9..5762eba73955c 100644 --- a/drivers/gpu/drm/panel/panel-ilitek-ili9882t.c +++ b/drivers/gpu/drm/panel/panel-ilitek-ili9882t.c @@ -579,13 +579,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; }