Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

Input: rb532_button - switch to using managed resources

Using devm API allows us to clean up error handling paths and drop the
remove() method.

Link: https://lore.kernel.org/r/20191017204217.106453-16-dmitry.torokhov@gmail.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>

+2 -18
+2 -18
drivers/input/misc/rb532_button.c
··· 58 58 struct input_polled_dev *poll_dev; 59 59 int error; 60 60 61 - poll_dev = input_allocate_polled_device(); 61 + poll_dev = devm_input_allocate_polled_device(&pdev->dev); 62 62 if (!poll_dev) 63 63 return -ENOMEM; 64 64 ··· 68 68 poll_dev->input->name = "rb532 button"; 69 69 poll_dev->input->phys = "rb532/button0"; 70 70 poll_dev->input->id.bustype = BUS_HOST; 71 - poll_dev->input->dev.parent = &pdev->dev; 72 - 73 - dev_set_drvdata(&pdev->dev, poll_dev); 74 71 75 72 input_set_capability(poll_dev->input, EV_KEY, RB532_BTN_KSYM); 76 73 77 74 error = input_register_polled_device(poll_dev); 78 - if (error) { 79 - input_free_polled_device(poll_dev); 75 + if (error) 80 76 return error; 81 - } 82 - 83 - return 0; 84 - } 85 - 86 - static int rb532_button_remove(struct platform_device *pdev) 87 - { 88 - struct input_polled_dev *poll_dev = dev_get_drvdata(&pdev->dev); 89 - 90 - input_unregister_polled_device(poll_dev); 91 - input_free_polled_device(poll_dev); 92 77 93 78 return 0; 94 79 } 95 80 96 81 static struct platform_driver rb532_button_driver = { 97 82 .probe = rb532_button_probe, 98 - .remove = rb532_button_remove, 99 83 .driver = { 100 84 .name = DRV_NAME, 101 85 },