On Wed, 5 Feb 2025, at 5:01 AM, Hugo Villeneuve wrote: > From: Hugo Villeneuve <hvilleneuve@xxxxxxxxxxxx> > > 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@xxxxxxxxxxxxxxx> > Signed-off-by: Hugo Villeneuve <hvilleneuve@xxxxxxxxxxxx> Acked-by: Alistair Francis <alistair@xxxxxxxxxxxxx> > --- > 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 eafe5a9b8964..bb09e84d0e92 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(1000); /* Ensure long-enough reset pulse (minimum 10us). */ > + > gpiod_set_value_cansleep(ts->reset_gpio, 0); > > /* Need a delay to have device up */ > > base-commit: 0de63bb7d91975e73338300a57c54b93d3cc151c > -- > 2.39.5 > >