Thread (11 messages) 11 messages, 3 authors, 2022-05-30

Re: [PATCH 3/4] Input: adp5588-keys - switch to using managed resources

From: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Date: 2022-05-29 05:22:19
Also in: lkml

On Sat, May 28, 2022 at 09:37:55PM +0200, Uwe Kleine-König wrote:
On Fri, May 27, 2022 at 09:56:30PM -0700, Dmitry Torokhov wrote:
quoted
This simplifies error handling in probe() and reduces amount of explicit
code in remove().

Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
---
 drivers/input/keyboard/adp5588-keys.c | 111 +++++++++++---------------
 1 file changed, 45 insertions(+), 66 deletions(-)
diff --git a/drivers/input/keyboard/adp5588-keys.c b/drivers/input/keyboard/adp5588-keys.c
index ac21873ba1d7..df84a2998ed2 100644
--- a/drivers/input/keyboard/adp5588-keys.c
+++ b/drivers/input/keyboard/adp5588-keys.c
@@ -182,6 +182,21 @@ static int adp5588_build_gpiomap(struct adp5588_kpad *kpad,
 	return n_unused;
 }
 
+static void adp5588_gpio_do_teardown(void *_kpad)
+{
+	struct adp5588_kpad *kpad = _kpad;
+	struct device *dev = &kpad->client->dev;
+	const struct adp5588_kpad_platform_data *pdata = dev_get_platdata(dev);
+	const struct adp5588_gpio_platform_data *gpio_data = pdata->gpio_data;
+	int error;
+
+	error = gpio_data->teardown(kpad->client,
+				    kpad->gc.base, kpad->gc.ngpio,
+				    gpio_data->context);
+	if (error)
+		dev_warn(&kpad->client->dev, "teardown failed %d\n", error);
+}
I think the more sensible approach is to drop support for setup and
teardown. Maybe even rip all usage of adp5588_gpio_platform_data.
That will come with the transition to device tree/device properties. For
now wanted to keep existing functionality intact.

Thanks.

-- 
Dmitry
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help