Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
ir-kbd-i2c.h
Go to the documentation of this file.
1 #ifndef _IR_I2C
2 #define _IR_I2C
3 
4 #include <media/rc-core.h>
5 
6 #define DEFAULT_POLLING_INTERVAL 100 /* ms */
7 
8 struct IR_i2c;
9 
10 struct IR_i2c {
11  char *ir_codes;
12  struct i2c_client *c;
13  struct rc_dev *rc;
14 
15  /* Used to avoid fast repeating */
16  unsigned char old;
17 
18  u32 polling_interval; /* in ms */
19 
21  char name[32];
22  char phys[32];
23  int (*get_key)(struct IR_i2c*, u32*, u32*);
24 };
25 
34 };
35 
36 /* Can be passed when instantiating an ir_video i2c device */
38  char *ir_codes;
39  const char *name;
40  u64 type; /* RC_TYPE_RC5, etc */
41  u32 polling_interval; /* 0 means DEFAULT_POLLING_INTERVAL */
42 
43  /*
44  * Specify either a function pointer or a value indicating one of
45  * ir_kbd_i2c's internal get_key functions
46  */
47  int (*get_key)(struct IR_i2c*, u32*, u32*);
49 
50  struct rc_dev *rc_dev;
51 };
52 #endif