build/patch/kernel/archive/sunxi-6.4/patches.megous/Revert-input-goodix-Don-t-disable-regulators-during-suspend.patch

47 lines
1.3 KiB
Diff

From 3d734facb947cd861448625f8f90de19f59fdb85 Mon Sep 17 00:00:00 2001
From: Ondrej Jirman <megi@xff.cz>
Date: Sat, 20 May 2023 16:58:49 +0200
Subject: [PATCH 113/469] Revert "input: goodix: Don't disable regulators
during suspend"
This reverts commit d93d2611a98ccbb75066bd9d508dccc9cf8ad352.
---
drivers/input/touchscreen/goodix.c | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/drivers/input/touchscreen/goodix.c b/drivers/input/touchscreen/goodix.c
index b645fe8473b5..2a7d0e51b942 100644
--- a/drivers/input/touchscreen/goodix.c
+++ b/drivers/input/touchscreen/goodix.c
@@ -1441,6 +1441,8 @@ static int goodix_suspend(struct device *dev)
goodix_free_irq(ts);
goodix_irq_direction_output(ts, 0);
gpiod_direction_output(ts->gpiod_rst, 0);
+ regulator_disable(ts->avdd28);
+ regulator_disable(ts->vddio);
return 0;
}
@@ -1490,6 +1492,18 @@ static int goodix_resume(struct device *dev)
int error;
if (ts->poweroff_in_suspend) {
+ error = regulator_enable(ts->avdd28);
+ if (error) {
+ dev_err(dev, "Regulator avdd28 enable failed.\n");
+ return error;
+ }
+
+ error = regulator_enable(ts->vddio);
+ if (error) {
+ dev_err(dev, "Regulator vddio enable failed.\n");
+ return error;
+ }
+
error = goodix_reset(ts);
if (error) {
dev_err(dev, "Controller reset failed.\n");
--
2.34.1