input: utilize new cdev_device_add helper function
Replace the open coded registration of the cdev and dev with the new device_add_cdev() helper in evdev, joydev and mousedev. The helper replaces a common pattern by taking the proper reference against the parent device and adding both the cdev and the device. Signed-off-by: Logan Gunthorpe <logang@deltatee.com> Acked-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:

committed by
Greg Kroah-Hartman

parent
92a3fa075d
commit
358a89ca2c
@@ -742,8 +742,6 @@ static void joydev_cleanup(struct joydev *joydev)
|
||||
joydev_mark_dead(joydev);
|
||||
joydev_hangup(joydev);
|
||||
|
||||
cdev_del(&joydev->cdev);
|
||||
|
||||
/* joydev is marked dead so no one else accesses joydev->open */
|
||||
if (joydev->open)
|
||||
input_close_device(handle);
|
||||
@@ -913,12 +911,8 @@ static int joydev_connect(struct input_handler *handler, struct input_dev *dev,
|
||||
goto err_free_joydev;
|
||||
|
||||
cdev_init(&joydev->cdev, &joydev_fops);
|
||||
joydev->cdev.kobj.parent = &joydev->dev.kobj;
|
||||
error = cdev_add(&joydev->cdev, joydev->dev.devt, 1);
|
||||
if (error)
|
||||
goto err_unregister_handle;
|
||||
|
||||
error = device_add(&joydev->dev);
|
||||
error = cdev_device_add(&joydev->cdev, &joydev->dev);
|
||||
if (error)
|
||||
goto err_cleanup_joydev;
|
||||
|
||||
@@ -926,7 +920,6 @@ static int joydev_connect(struct input_handler *handler, struct input_dev *dev,
|
||||
|
||||
err_cleanup_joydev:
|
||||
joydev_cleanup(joydev);
|
||||
err_unregister_handle:
|
||||
input_unregister_handle(&joydev->handle);
|
||||
err_free_joydev:
|
||||
put_device(&joydev->dev);
|
||||
@@ -939,7 +932,7 @@ static void joydev_disconnect(struct input_handle *handle)
|
||||
{
|
||||
struct joydev *joydev = handle->private;
|
||||
|
||||
device_del(&joydev->dev);
|
||||
cdev_device_del(&joydev->cdev, &joydev->dev);
|
||||
joydev_cleanup(joydev);
|
||||
input_free_minor(MINOR(joydev->dev.devt));
|
||||
input_unregister_handle(handle);
|
||||
|
Reference in New Issue
Block a user