summaryrefslogtreecommitdiffstats
path: root/drivers/input/misc
diff options
context:
space:
mode:
authorDmitry Torokhov <dmitry.torokhov@gmail.com>2017-09-06 19:42:26 -0400
committerDmitry Torokhov <dmitry.torokhov@gmail.com>2017-10-23 19:32:30 -0400
commit04ce40a61a9164f82065eade491099b185c17a65 (patch)
treeedcb876f1d7e2d43bb1284fbea3373eb1d25f0d4 /drivers/input/misc
parentc06616528f283c05ebcd24a12cf80007efbe8f21 (diff)
Input: uinput - remove uinput_allocate_device()
There is no need for this wrapper; let's use input_allocate_device() directly, and complete initialization in uinput_create_device(). Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Diffstat (limited to 'drivers/input/misc')
-rw-r--r--drivers/input/misc/uinput.c28
1 files changed, 10 insertions, 18 deletions
diff --git a/drivers/input/misc/uinput.c b/drivers/input/misc/uinput.c
index 09549eddfcd4..06f3ac67dde1 100644
--- a/drivers/input/misc/uinput.c
+++ b/drivers/input/misc/uinput.c
@@ -324,6 +324,10 @@ static int uinput_create_device(struct uinput_device *udev)
324 dev->flush = uinput_dev_flush; 324 dev->flush = uinput_dev_flush;
325 } 325 }
326 326
327 dev->event = uinput_dev_event;
328
329 input_set_drvdata(udev->dev, udev);
330
327 error = input_register_device(udev->dev); 331 error = input_register_device(udev->dev);
328 if (error) 332 if (error)
329 goto fail2; 333 goto fail2;
@@ -406,18 +410,6 @@ static int uinput_validate_absbits(struct input_dev *dev)
406 return 0; 410 return 0;
407} 411}
408 412
409static int uinput_allocate_device(struct uinput_device *udev)
410{
411 udev->dev = input_allocate_device();
412 if (!udev->dev)
413 return -ENOMEM;
414
415 udev->dev->event = uinput_dev_event;
416 input_set_drvdata(udev->dev, udev);
417
418 return 0;
419}
420
421static int uinput_dev_setup(struct uinput_device *udev, 413static int uinput_dev_setup(struct uinput_device *udev,
422 struct uinput_setup __user *arg) 414 struct uinput_setup __user *arg)
423{ 415{
@@ -493,9 +485,9 @@ static int uinput_setup_device_legacy(struct uinput_device *udev,
493 return -EINVAL; 485 return -EINVAL;
494 486
495 if (!udev->dev) { 487 if (!udev->dev) {
496 retval = uinput_allocate_device(udev); 488 udev->dev = input_allocate_device();
497 if (retval) 489 if (!udev->dev)
498 return retval; 490 return -ENOMEM;
499 } 491 }
500 492
501 dev = udev->dev; 493 dev = udev->dev;
@@ -826,9 +818,9 @@ static long uinput_ioctl_handler(struct file *file, unsigned int cmd,
826 return retval; 818 return retval;
827 819
828 if (!udev->dev) { 820 if (!udev->dev) {
829 retval = uinput_allocate_device(udev); 821 udev->dev = input_allocate_device();
830 if (retval) 822 if (!udev->dev)
831 goto out; 823 return -ENOMEM;
832 } 824 }
833 825
834 switch (cmd) { 826 switch (cmd) {