diff options
Diffstat (limited to 'include/media/rc-core.h')
| -rw-r--r-- | include/media/rc-core.h | 48 | 
1 files changed, 46 insertions, 2 deletions
| diff --git a/include/media/rc-core.h b/include/media/rc-core.h index b6586a91129c..10908e356b23 100644 --- a/include/media/rc-core.h +++ b/include/media/rc-core.h @@ -29,9 +29,16 @@ do {								\  		printk(KERN_DEBUG pr_fmt(fmt), ##__VA_ARGS__);	\  } while (0) +/** + * enum rc_driver_type - type of the RC output + * + * @RC_DRIVER_SCANCODE:	Driver or hardware generates a scancode + * @RC_DRIVER_IR_RAW:	Driver or hardware generates pulse/space sequences. + *			It needs a Infra-Red pulse/space decoder + */  enum rc_driver_type { -	RC_DRIVER_SCANCODE = 0,	/* Driver or hardware generates a scancode */ -	RC_DRIVER_IR_RAW,	/* Needs a Infra-Red pulse/space decoder */ +	RC_DRIVER_SCANCODE = 0, +	RC_DRIVER_IR_RAW,  };  /** @@ -119,6 +126,7 @@ enum rc_filter_type {   * @s_carrier_report: enable carrier reports   * @s_filter: set the scancode filter   * @s_wakeup_filter: set the wakeup scancode filter + * @s_timeout: set hardware timeout in ns   */  struct rc_dev {  	struct device			dev; @@ -174,6 +182,8 @@ struct rc_dev {  						    struct rc_scancode_filter *filter);  	int				(*s_wakeup_filter)(struct rc_dev *dev,  							   struct rc_scancode_filter *filter); +	int				(*s_timeout)(struct rc_dev *dev, +						     unsigned int timeout);  };  #define to_rc_dev(d) container_of(d, struct rc_dev, dev) @@ -185,12 +195,46 @@ struct rc_dev {   * Remote Controller, at sys/class/rc.   */ +/** + * rc_allocate_device - Allocates a RC device + * + * returns a pointer to struct rc_dev. + */  struct rc_dev *rc_allocate_device(void); + +/** + * rc_free_device - Frees a RC device + * + * @dev: pointer to struct rc_dev. + */  void rc_free_device(struct rc_dev *dev); + +/** + * rc_register_device - Registers a RC device + * + * @dev: pointer to struct rc_dev. + */  int rc_register_device(struct rc_dev *dev); + +/** + * rc_unregister_device - Unregisters a RC device + * + * @dev: pointer to struct rc_dev. + */  void rc_unregister_device(struct rc_dev *dev); +/** + * rc_open - Opens a RC device + * + * @rdev: pointer to struct rc_dev. + */  int rc_open(struct rc_dev *rdev); + +/** + * rc_open - Closes a RC device + * + * @rdev: pointer to struct rc_dev. + */  void rc_close(struct rc_dev *rdev);  void rc_repeat(struct rc_dev *dev); |