media: lirc: move lirc_dev->attached to rc_dev->registered
This is done to further remove the lirc kernel api. Ensure that every fops checks for this. Signed-off-by: Sean Young <sean@mess.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
This commit is contained in:

committed by
Mauro Carvalho Chehab

parent
71695aff9f
commit
7790e81f7e
@@ -1809,6 +1809,8 @@ int rc_register_device(struct rc_dev *dev)
|
||||
goto out_lirc;
|
||||
}
|
||||
|
||||
dev->registered = true;
|
||||
|
||||
IR_dprintk(1, "Registered rc%u (driver: %s)\n",
|
||||
dev->minor,
|
||||
dev->driver_name ? dev->driver_name : "unknown");
|
||||
@@ -1871,6 +1873,14 @@ void rc_unregister_device(struct rc_dev *dev)
|
||||
|
||||
rc_free_rx_device(dev);
|
||||
|
||||
mutex_lock(&dev->lock);
|
||||
dev->registered = false;
|
||||
mutex_unlock(&dev->lock);
|
||||
|
||||
/*
|
||||
* lirc device should be freed with dev->registered = false, so
|
||||
* that userspace polling will get notified.
|
||||
*/
|
||||
if (dev->driver_type != RC_DRIVER_SCANCODE)
|
||||
ir_lirc_unregister(dev);
|
||||
|
||||
|
Reference in New Issue
Block a user