Input: cyttsp5 - ensure minimum reset pulse width
commitc6cb8bf794upstream. 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:5b0c03e24a("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> Link: https://lore.kernel.org/r/20250410184633.1164837-1-hugo@hugovil.com Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
ce4e826dbf
commit
dadbe33fee
@@ -865,13 +865,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 */
|
||||
|
||||
Reference in New Issue
Block a user