33 lines
1.1 KiB
Diff
33 lines
1.1 KiB
Diff
From 081fa8779b8365f4bb2efe1c0ff79ceb31bef6ec Mon Sep 17 00:00:00 2001
|
|
From: Ondrej Jirman <megi@xff.cz>
|
|
Date: Sat, 26 Nov 2022 15:18:14 +0100
|
|
Subject: [PATCH 375/391] input: pinephone-keyboard: Wait a bit after enabling
|
|
vbus
|
|
|
|
In case the MCU was browned out, we want to wait a bit after enabling
|
|
VBUS and before probing the MCU over I2C, for the MCU to initialize.
|
|
Otherwise it may be possible for the MCU to fail to respond during probe
|
|
and for the driver to fail initialization.
|
|
|
|
Signed-off-by: Ondrej Jirman <megi@xff.cz>
|
|
---
|
|
drivers/input/keyboard/pinephone-keyboard.c | 2 ++
|
|
1 file changed, 2 insertions(+)
|
|
|
|
diff --git a/drivers/input/keyboard/pinephone-keyboard.c b/drivers/input/keyboard/pinephone-keyboard.c
|
|
index ee4c26a1b..6717dd1b3 100644
|
|
--- a/drivers/input/keyboard/pinephone-keyboard.c
|
|
+++ b/drivers/input/keyboard/pinephone-keyboard.c
|
|
@@ -368,6 +368,8 @@ static int ppkb_probe(struct i2c_client *client)
|
|
if (error)
|
|
return error;
|
|
|
|
+ mdelay(100);
|
|
+
|
|
ret = i2c_smbus_read_i2c_block_data(client, 0, sizeof(info), info);
|
|
if (ret != sizeof(info)) {
|
|
error = ret < 0 ? ret : -EIO;
|
|
--
|
|
2.35.3
|
|
|