diff options
author | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2017-09-06 19:42:26 -0400 |
---|---|---|
committer | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2017-10-23 19:32:30 -0400 |
commit | 04ce40a61a9164f82065eade491099b185c17a65 (patch) | |
tree | edcb876f1d7e2d43bb1284fbea3373eb1d25f0d4 /drivers/input/misc | |
parent | c06616528f283c05ebcd24a12cf80007efbe8f21 (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.c | 28 |
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 | ||
409 | static 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 | |||
421 | static int uinput_dev_setup(struct uinput_device *udev, | 413 | static 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) { |