Commit dfafa560 authored by Christophe JAILLET's avatar Christophe JAILLET Committed by Dmitry Torokhov
Browse files

Input: da9063 - use devm_delayed_work_autocancel()

parent 65de58c2
Loading
Loading
Loading
Loading
+3 −10
Original line number Diff line number Diff line
@@ -4,6 +4,7 @@
 * Copyright (C) 2015  Dialog Semiconductor Ltd.
 */

#include <linux/devm-helpers.h>
#include <linux/module.h>
#include <linux/errno.h>
#include <linux/input.h>
@@ -182,13 +183,6 @@ static irqreturn_t da9063_onkey_irq_handler(int irq, void *data)
	return IRQ_HANDLED;
}

static void da9063_cancel_poll(void *data)
{
	struct da9063_onkey *onkey = data;

	cancel_delayed_work_sync(&onkey->work);
}

static int da9063_onkey_probe(struct platform_device *pdev)
{
	struct da9063_onkey *onkey;
@@ -234,9 +228,8 @@ static int da9063_onkey_probe(struct platform_device *pdev)

	input_set_capability(onkey->input, EV_KEY, KEY_POWER);

	INIT_DELAYED_WORK(&onkey->work, da9063_poll_on);

	error = devm_add_action(&pdev->dev, da9063_cancel_poll, onkey);
	error = devm_delayed_work_autocancel(&pdev->dev, &onkey->work,
					     da9063_poll_on);
	if (error) {
		dev_err(&pdev->dev,
			"Failed to add cancel poll action: %d\n",