Fix a bug where an RMI4 function handler's config() routine
was not be called during rmi_function_probe().
Reported-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Christopher Heiny <redacted>
Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Cc: Benjamin Tissoires <redacted>
Cc: Linux Walleij <redacted>
Cc: David Herrmann <redacted>
Cc: Jiri Kosina <redacted>
Cc: Courtney Cavin <redacted>
---
drivers/input/rmi4/rmi_bus.c | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/drivers/input/rmi4/rmi_bus.c b/drivers/input/rmi4/rmi_bus.c
index 6e0454a..2ed0d32 100644
--- a/drivers/input/rmi4/rmi_bus.c
+++ b/drivers/input/rmi4/rmi_bus.c
@@ -212,7 +212,14 @@ static int rmi_function_probe(struct device *dev)
if (handler->probe) {
error = handler->probe(fn);
- return error;
+ if (error)
+ return error;
+ }
+ if (handler->config) {
+ error = handler->config(fn);
+ if (error)
+ dev_warn(dev, "WARNING: Config for F%02x failed with code %d.\n",
+ handler->func, error);
}
return 0;