Commit 84c36ab7 authored by Linus Walleij's avatar Linus Walleij Committed by Dmitry Torokhov

Input: cyttsp - verbose error on soft reset

The first thing the Cypress driver does when starting
up is to try a soft reset. This is the first point where
the driver SPI/I2C communication can fail, so put out some
nice debug text:

  cyttsp-spi spi2.0: failed to send soft reset

Instead of just:

  cyttsp-spi: probe of spi2.0 failed with error -5

This is more helpful.
Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
Link: https://lore.kernel.org/r/20210322221349.1116666-1-linus.walleij@linaro.orgSigned-off-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
parent 55f2645c
...@@ -238,7 +238,6 @@ static void cyttsp_hard_reset(struct cyttsp *ts) ...@@ -238,7 +238,6 @@ static void cyttsp_hard_reset(struct cyttsp *ts)
static int cyttsp_soft_reset(struct cyttsp *ts) static int cyttsp_soft_reset(struct cyttsp *ts)
{ {
unsigned long timeout;
int retval; int retval;
/* wait for interrupt to set ready completion */ /* wait for interrupt to set ready completion */
...@@ -248,12 +247,16 @@ static int cyttsp_soft_reset(struct cyttsp *ts) ...@@ -248,12 +247,16 @@ static int cyttsp_soft_reset(struct cyttsp *ts)
enable_irq(ts->irq); enable_irq(ts->irq);
retval = ttsp_send_command(ts, CY_SOFT_RESET_MODE); retval = ttsp_send_command(ts, CY_SOFT_RESET_MODE);
if (retval) if (retval) {
dev_err(ts->dev, "failed to send soft reset\n");
goto out; goto out;
}
timeout = wait_for_completion_timeout(&ts->bl_ready, if (!wait_for_completion_timeout(&ts->bl_ready,
msecs_to_jiffies(CY_DELAY_DFLT * CY_DELAY_MAX)); msecs_to_jiffies(CY_DELAY_DFLT * CY_DELAY_MAX))) {
retval = timeout ? 0 : -EIO; dev_err(ts->dev, "timeout waiting for soft reset\n");
retval = -EIO;
}
out: out:
ts->state = CY_IDLE_STATE; ts->state = CY_IDLE_STATE;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment