]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
5.4-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 23 May 2022 06:45:07 +0000 (08:45 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 23 May 2022 06:45:07 +0000 (08:45 +0200)
added patches:
input-ili210x-fix-reset-timing.patch

queue-5.4/input-ili210x-fix-reset-timing.patch [new file with mode: 0644]
queue-5.4/series

diff --git a/queue-5.4/input-ili210x-fix-reset-timing.patch b/queue-5.4/input-ili210x-fix-reset-timing.patch
new file mode 100644 (file)
index 0000000..2056588
--- /dev/null
@@ -0,0 +1,42 @@
+From e4920d42ce0e9c8aafb7f64b6d9d4ae02161e51e Mon Sep 17 00:00:00 2001
+From: Marek Vasut <marex@denx.de>
+Date: Wed, 18 May 2022 14:28:32 -0700
+Subject: Input: ili210x - fix reset timing
+
+From: Marek Vasut <marex@denx.de>
+
+commit e4920d42ce0e9c8aafb7f64b6d9d4ae02161e51e upstream.
+
+According to Ilitek "231x & ILI251x Programming Guide" Version: 2.30
+"2.1. Power Sequence", "T4 Chip Reset and discharge time" is minimum
+10ms and "T2 Chip initial time" is maximum 150ms. Adjust the reset
+timings such that T4 is 12ms and T2 is 160ms to fit those figures.
+
+This prevents sporadic touch controller start up failures when some
+systems with at least ILI251x controller boot, without this patch
+the systems sometimes fail to communicate with the touch controller.
+
+Fixes: 201f3c803544c ("Input: ili210x - add reset GPIO support")
+Signed-off-by: Marek Vasut <marex@denx.de>
+Link: https://lore.kernel.org/r/20220518204901.93534-1-marex@denx.de
+Cc: stable@vger.kernel.org
+Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ drivers/input/touchscreen/ili210x.c |    4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+--- a/drivers/input/touchscreen/ili210x.c
++++ b/drivers/input/touchscreen/ili210x.c
+@@ -290,9 +290,9 @@ static int ili210x_i2c_probe(struct i2c_
+               if (error)
+                       return error;
+-              usleep_range(50, 100);
++              usleep_range(12000, 15000);
+               gpiod_set_value_cansleep(reset_gpio, 0);
+-              msleep(100);
++              msleep(160);
+       }
+       priv = devm_kzalloc(dev, sizeof(*priv), GFP_KERNEL);
index ff634f31ad3b0daeeccbe3ef38c35e480cdee7a6..02445fe54456233ed309897628de3b79d7e3a862 100644 (file)
@@ -56,3 +56,4 @@ selftests-add-ping-test-with-ping_group_range-tuned.patch
 ethernet-tulip-fix-missing-pci_disable_device-on-err.patch
 net-stmmac-fix-missing-pci_disable_device-on-error-i.patch
 net-atlantic-verify-hw_head_-lies-within-tx-buffer-r.patch
+input-ili210x-fix-reset-timing.patch