mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2025-01-23 21:19:56 +07:00
[media] lirc_dev: clarify error handling
out_sysfs is misleading, sysfs only comes into play after device_add(). Also, calling device_init() before the rest of struct dev is filled out is clearer. Signed-off-by: David Härdeman <david@hardeman.nu> Signed-off-by: Sean Young <sean@mess.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
This commit is contained in:
parent
c3104e1b42
commit
2582322695
@ -238,16 +238,16 @@ static int lirc_allocate_driver(struct lirc_driver *d)
|
|||||||
|
|
||||||
ir->d = *d;
|
ir->d = *d;
|
||||||
|
|
||||||
|
device_initialize(&ir->dev);
|
||||||
ir->dev.devt = MKDEV(MAJOR(lirc_base_dev), ir->d.minor);
|
ir->dev.devt = MKDEV(MAJOR(lirc_base_dev), ir->d.minor);
|
||||||
ir->dev.class = lirc_class;
|
ir->dev.class = lirc_class;
|
||||||
ir->dev.parent = d->dev;
|
ir->dev.parent = d->dev;
|
||||||
ir->dev.release = lirc_release;
|
ir->dev.release = lirc_release;
|
||||||
dev_set_name(&ir->dev, "lirc%d", ir->d.minor);
|
dev_set_name(&ir->dev, "lirc%d", ir->d.minor);
|
||||||
device_initialize(&ir->dev);
|
|
||||||
|
|
||||||
err = lirc_cdev_add(ir);
|
err = lirc_cdev_add(ir);
|
||||||
if (err)
|
if (err)
|
||||||
goto out_sysfs;
|
goto out_free_dev;
|
||||||
|
|
||||||
ir->attached = 1;
|
ir->attached = 1;
|
||||||
|
|
||||||
@ -264,7 +264,7 @@ static int lirc_allocate_driver(struct lirc_driver *d)
|
|||||||
return minor;
|
return minor;
|
||||||
out_cdev:
|
out_cdev:
|
||||||
cdev_del(&ir->cdev);
|
cdev_del(&ir->cdev);
|
||||||
out_sysfs:
|
out_free_dev:
|
||||||
put_device(&ir->dev);
|
put_device(&ir->dev);
|
||||||
out_lock:
|
out_lock:
|
||||||
mutex_unlock(&lirc_dev_lock);
|
mutex_unlock(&lirc_dev_lock);
|
||||||
|
Loading…
Reference in New Issue
Block a user