mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-07 11:26:02 +09:00
UPSTREAM: [media] media: lirc_dev: introduce lirc_allocate_device and lirc_free_device
Introduce two new functions so that the API for lirc_dev matches that
of the rc-core and input subsystems.
This means that lirc_dev structs are managed using the usual four
functions:
lirc_allocate_device
lirc_free_device
lirc_register_device
lirc_unregister_device
The functions are pretty simplistic at this point, later patches will put
more flesh on the bones of both.
Signed-off-by: David Härdeman <david@hardeman.nu>
Signed-off-by: Sean Young <sean@mess.org>
(cherry picked from commit 6ecccc379b)
Signed-off-by: Ziyuan Xu <xzy.xu@rock-chips.com>
This commit is contained in:
committed by
Tao Huang
parent
836b902c28
commit
383df79f16
@@ -350,7 +350,7 @@ static int ir_lirc_register(struct rc_dev *dev)
|
||||
int rc = -ENOMEM;
|
||||
unsigned long features = 0;
|
||||
|
||||
ldev = kzalloc(sizeof(*ldev), GFP_KERNEL);
|
||||
ldev = lirc_allocate_device();
|
||||
if (!ldev)
|
||||
return rc;
|
||||
|
||||
|
||||
@@ -109,6 +109,19 @@ out:
|
||||
return err;
|
||||
}
|
||||
|
||||
struct lirc_dev *
|
||||
lirc_allocate_device(void)
|
||||
{
|
||||
return kzalloc(sizeof(struct lirc_dev), GFP_KERNEL);
|
||||
}
|
||||
EXPORT_SYMBOL(lirc_allocate_device);
|
||||
|
||||
void lirc_free_device(struct lirc_dev *d)
|
||||
{
|
||||
kfree(d);
|
||||
}
|
||||
EXPORT_SYMBOL(lirc_free_device);
|
||||
|
||||
int lirc_register_device(struct lirc_dev *d)
|
||||
{
|
||||
struct irctl *ir;
|
||||
|
||||
@@ -163,11 +163,10 @@ struct lirc_dev {
|
||||
struct irctl *irctl;
|
||||
};
|
||||
|
||||
/* following functions can be called ONLY from user context
|
||||
*
|
||||
* returns negative value on error or zero
|
||||
* contents of the structure pointed by p is copied
|
||||
*/
|
||||
struct lirc_dev *lirc_allocate_device(void);
|
||||
|
||||
void lirc_free_device(struct lirc_dev *d);
|
||||
|
||||
int lirc_register_device(struct lirc_dev *d);
|
||||
|
||||
void lirc_unregister_device(struct lirc_dev *d);
|
||||
|
||||
Reference in New Issue
Block a user