Message ID | 20240617183018.916234-1-andrey.lalaev@gmail.com (mailing list archive) |
---|---|
State | Mainlined |
Commit | 866a5c7e2781cf1b019072288f1f5c64186dcb63 |
Headers | show |
Series | Input: qt1050 - handle CHIP_ID reading error | expand |
On 24-06-17, Andrei Lalaev wrote: > From: Andrei Lalaev <andrei.lalaev@anton-paar.com> > > 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>
On Mon, Jun 17, 2024 at 08:30:18PM +0200, Andrei Lalaev wrote: > From: Andrei Lalaev <andrei.lalaev@anton-paar.com> > > 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> Applied, thank you. But how did we get into the situation with the chip being missing? Incorrect DTB for the board? Thanks.
diff --git a/drivers/input/keyboard/qt1050.c b/drivers/input/keyboard/qt1050.c index b51dfcd76038..056e9bc26026 100644 --- a/drivers/input/keyboard/qt1050.c +++ b/drivers/input/keyboard/qt1050.c @@ -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;