Mauro Carvalho Chehab | d5e5265 | 2005-11-08 21:37:32 -0800 | [diff] [blame] | 1 | #ifndef _IR_I2C |
| 2 | #define _IR_I2C |
| 3 | |
| 4 | #include <media/ir-common.h> |
| 5 | |
| 6 | struct IR_i2c; |
| 7 | |
| 8 | struct IR_i2c { |
| 9 | IR_KEYTAB_TYPE *ir_codes; |
Jean Delvare | c668f32 | 2009-05-13 16:48:50 -0300 | [diff] [blame] | 10 | struct i2c_client *c; |
Mauro Carvalho Chehab | d5e5265 | 2005-11-08 21:37:32 -0800 | [diff] [blame] | 11 | struct input_dev *input; |
| 12 | struct ir_input_state ir; |
| 13 | |
| 14 | /* Used to avoid fast repeating */ |
| 15 | unsigned char old; |
| 16 | |
Jean Delvare | c1089bd | 2009-03-07 07:43:43 -0300 | [diff] [blame] | 17 | struct delayed_work work; |
Jean Delvare | 1df8e98 | 2009-05-13 16:48:07 -0300 | [diff] [blame] | 18 | char name[32]; |
Mauro Carvalho Chehab | d5e5265 | 2005-11-08 21:37:32 -0800 | [diff] [blame] | 19 | char phys[32]; |
| 20 | int (*get_key)(struct IR_i2c*, u32*, u32*); |
| 21 | }; |
Jean Delvare | 4d7a2d6 | 2009-05-13 16:49:32 -0300 | [diff] [blame^] | 22 | |
| 23 | /* Can be passed when instantiating an ir_video i2c device */ |
| 24 | struct IR_i2c_init_data { |
| 25 | IR_KEYTAB_TYPE *ir_codes; |
| 26 | const char *name; |
| 27 | int (*get_key)(struct IR_i2c*, u32*, u32*); |
| 28 | }; |
Mauro Carvalho Chehab | d5e5265 | 2005-11-08 21:37:32 -0800 | [diff] [blame] | 29 | #endif |