]> www.infradead.org Git - linux.git/commitdiff
Input: qt1050 - handle CHIP_ID reading error
authorAndrei Lalaev <andrei.lalaev@anton-paar.com>
Mon, 17 Jun 2024 18:30:18 +0000 (20:30 +0200)
committerDmitry Torokhov <dmitry.torokhov@gmail.com>
Tue, 25 Jun 2024 16:13:08 +0000 (09:13 -0700)
If the device is missing, we get the following error:

  qt1050 3-0041: ID -1340767592 not supported

Let's handle this situation and print more informative error
when reading of CHIP_ID fails:

  qt1050 3-0041: Failed to read chip ID: -6

Fixes: cbebf5addec1 ("Input: qt1050 - add Microchip AT42QT1050 support")
Signed-off-by: Andrei Lalaev <andrei.lalaev@anton-paar.com>
Reviewed-by: Marco Felsch <m.felsch@pengutronix.de>
Link: https://lore.kernel.org/r/20240617183018.916234-1-andrey.lalaev@gmail.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
drivers/input/keyboard/qt1050.c

index b51dfcd76038623c8ce321901c8201a05416d347..056e9bc2602620f29e9a205c3f6f18e36e6a9112 100644 (file)
@@ -226,7 +226,12 @@ static bool qt1050_identify(struct qt1050_priv *ts)
        int err;
 
        /* Read Chip ID */
-       regmap_read(ts->regmap, QT1050_CHIP_ID, &val);
+       err = regmap_read(ts->regmap, QT1050_CHIP_ID, &val);
+       if (err) {
+               dev_err(&ts->client->dev, "Failed to read chip ID: %d\n", err);
+               return false;
+       }
+
        if (val != QT1050_CHIP_ID_VER) {
                dev_err(&ts->client->dev, "ID %d not supported\n", val);
                return false;