• Home
  • History
  • Annotate
  • Line#
  • Navigate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt-6.x.4708/linux/linux-2.6/include/media/
1#ifndef _IR_I2C
2#define _IR_I2C
3
4#include <media/ir-common.h>
5
6struct IR_i2c;
7
8struct IR_i2c {
9	char		       *ir_codes;
10
11	struct i2c_client      *c;
12	struct input_dev       *input;
13	struct ir_input_state  ir;
14	u64                    ir_type;
15	/* Used to avoid fast repeating */
16	unsigned char          old;
17
18	struct delayed_work    work;
19	char                   name[32];
20	char                   phys[32];
21	int                    (*get_key)(struct IR_i2c*, u32*, u32*);
22};
23
24enum ir_kbd_get_key_fn {
25	IR_KBD_GET_KEY_CUSTOM = 0,
26	IR_KBD_GET_KEY_PIXELVIEW,
27	IR_KBD_GET_KEY_PV951,
28	IR_KBD_GET_KEY_HAUP,
29	IR_KBD_GET_KEY_KNC1,
30	IR_KBD_GET_KEY_FUSIONHDTV,
31	IR_KBD_GET_KEY_HAUP_XVR,
32	IR_KBD_GET_KEY_AVERMEDIA_CARDBUS,
33};
34
35/* Can be passed when instantiating an ir_video i2c device */
36struct IR_i2c_init_data {
37	char			*ir_codes;
38	const char             *name;
39	u64          type; /* IR_TYPE_RC5, etc */
40	/*
41	 * Specify either a function pointer or a value indicating one of
42	 * ir_kbd_i2c's internal get_key functions
43	 */
44	int                    (*get_key)(struct IR_i2c*, u32*, u32*);
45	enum ir_kbd_get_key_fn internal_get_key_func;
46};
47#endif
48