mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-04 01:49:36 +00:00
[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>
This commit is contained in:
parent
5ddc9c098d
commit
6ecccc379b
3 changed files with 18 additions and 6 deletions
|
@ -347,7 +347,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;
|
||||
|
||||
|
|
|
@ -103,6 +103,19 @@ static int lirc_allocate_buffer(struct irctl *ir)
|
|||
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;
|
||||
|
|
|
@ -156,11 +156,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);
|
||||
|
|
Loading…
Reference in a new issue