Commit 0265c324 authored by Guenter Roeck's avatar Guenter Roeck Committed by Dmitry Torokhov
Browse files

Input: bfin_rotary - switch to using devm_add_action_or_reset()



Use local variable 'dev' instead of dereferencing it several times and
replace devm_add_action() and manual error handling with
devm_add_action_or_reset().

Signed-off-by: default avatarGuenter Roeck <linux@roeck-us.net>
Signed-off-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
parent ad03ae44
Loading
Loading
Loading
Loading
+5 −6
Original line number Diff line number Diff line
@@ -147,19 +147,18 @@ static int bfin_rotary_probe(struct platform_device *pdev)

	if (pdata->pin_list) {
		error = peripheral_request_list(pdata->pin_list,
						dev_name(&pdev->dev));
						dev_name(dev));
		if (error) {
			dev_err(dev, "requesting peripherals failed: %d\n",
				error);
			return error;
		}

		error = devm_add_action(dev, bfin_rotary_free_action,
		error = devm_add_action_or_reset(dev, bfin_rotary_free_action,
						 pdata->pin_list);
		if (error) {
			dev_err(dev, "setting cleanup action failed: %d\n",
				error);
			peripheral_free_list(pdata->pin_list);
			return error;
		}
	}
@@ -189,7 +188,7 @@ static int bfin_rotary_probe(struct platform_device *pdev)

	input->name = pdev->name;
	input->phys = "bfin-rotary/input0";
	input->dev.parent = &pdev->dev;
	input->dev.parent = dev;

	input_set_drvdata(input, rotary);

@@ -239,7 +238,7 @@ static int bfin_rotary_probe(struct platform_device *pdev)
	}

	platform_set_drvdata(pdev, rotary);
	device_init_wakeup(&pdev->dev, 1);
	device_init_wakeup(dev, 1);

	return 0;
}