[PATCH v2] Input: cyttsp5 - ensure minimum reset pulse width

Hugo Villeneuve posted 1 patch 8 months, 1 week ago
drivers/input/touchscreen/cyttsp5.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
[PATCH v2] Input: cyttsp5 - ensure minimum reset pulse width
Posted by Hugo Villeneuve 8 months, 1 week ago
From: Hugo Villeneuve <hvilleneuve@dimonoff.com>

The current reset pulse width is measured to be 5us on a
Renesas RZ/G2L SOM. The manufacturer's minimum reset pulse width is
specified as 10us.

Extend reset pulse width to make sure it is long enough on all platforms.

Also reword confusing comments about reset pin assertion.

Fixes: 5b0c03e24a06 ("Input: Add driver for Cypress Generation 5 touchscreen")
Cc: <stable@vger.kernel.org>
Acked-by: Alistair Francis <alistair@alistair23.me>
Signed-off-by: Hugo Villeneuve <hvilleneuve@dimonoff.com>
---
Changes for v2:
  - change delay from 1000us to 10us, to eliminate confusion
  - Add Alistair acked-by tag
---
 drivers/input/touchscreen/cyttsp5.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/input/touchscreen/cyttsp5.c b/drivers/input/touchscreen/cyttsp5.c
index eafe5a9b89648..14c43f0a6c217 100644
--- a/drivers/input/touchscreen/cyttsp5.c
+++ b/drivers/input/touchscreen/cyttsp5.c
@@ -870,13 +870,16 @@ static int cyttsp5_probe(struct device *dev, struct regmap *regmap, int irq,
 	ts->input->phys = ts->phys;
 	input_set_drvdata(ts->input, ts);
 
-	/* Reset the gpio to be in a reset state */
+	/* Assert gpio to be in a reset state */
 	ts->reset_gpio = devm_gpiod_get_optional(dev, "reset", GPIOD_OUT_HIGH);
 	if (IS_ERR(ts->reset_gpio)) {
 		error = PTR_ERR(ts->reset_gpio);
 		dev_err(dev, "Failed to request reset gpio, error %d\n", error);
 		return error;
 	}
+
+	fsleep(10); /* Ensure long-enough reset pulse (minimum 10us). */
+
 	gpiod_set_value_cansleep(ts->reset_gpio, 0);
 
 	/* Need a delay to have device up */

base-commit: 3b07108ada81a8ebcebf1fe61367b4e436c895bd
-- 
2.39.5
Re: [PATCH v2] Input: cyttsp5 - ensure minimum reset pulse width
Posted by Dmitry Torokhov 7 months, 4 weeks ago
On Thu, Apr 10, 2025 at 02:46:32PM -0400, Hugo Villeneuve wrote:
> From: Hugo Villeneuve <hvilleneuve@dimonoff.com>
> 
> The current reset pulse width is measured to be 5us on a
> Renesas RZ/G2L SOM. The manufacturer's minimum reset pulse width is
> specified as 10us.
> 
> Extend reset pulse width to make sure it is long enough on all platforms.
> 
> Also reword confusing comments about reset pin assertion.
> 
> Fixes: 5b0c03e24a06 ("Input: Add driver for Cypress Generation 5 touchscreen")
> Cc: <stable@vger.kernel.org>
> Acked-by: Alistair Francis <alistair@alistair23.me>
> Signed-off-by: Hugo Villeneuve <hvilleneuve@dimonoff.com>

Applied, thank you.

-- 
Dmitry