• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt-6.x.4708/linux/linux-2.6.36/drivers/media/dvb/ttpci/

Lines Matching defs:ir

47 /* Note: enable ir debugging by or'ing debug with 16 */
92 struct infrared *ir = (struct infrared *) parm;
94 if (!ir || !test_bit(ir->last_key, ir->input_dev->key))
97 input_report_key(ir->input_dev, ir->last_key, 0);
98 input_sync(ir->input_dev);
105 struct infrared *ir = (struct infrared *) parm;
106 u32 ircom = ir->ir_command;
113 switch (ir->protocol) {
136 printk("%s invalid protocol %x\n", __func__, ir->protocol);
140 input_event(ir->input_dev, EV_MSC, MSC_RAW, (addr << 16) | data);
141 input_event(ir->input_dev, EV_MSC, MSC_SCAN, data);
143 keycode = ir->key_map[data];
149 if (!(ir->device_mask & (1 << addr)))
158 if (timer_pending(&ir->keyup_timer)) {
159 del_timer(&ir->keyup_timer);
160 if (ir->last_key != keycode || toggle != ir->last_toggle) {
161 ir->delay_timer_finished = 0;
162 input_event(ir->input_dev, EV_KEY, ir->last_key, 0);
163 input_event(ir->input_dev, EV_KEY, keycode, 1);
164 input_sync(ir->input_dev);
165 } else if (ir->delay_timer_finished) {
166 input_event(ir->input_dev, EV_KEY, keycode, 2);
167 input_sync(ir->input_dev);
170 ir->delay_timer_finished = 0;
171 input_event(ir->input_dev, EV_KEY, keycode, 1);
172 input_sync(ir->input_dev);
175 ir->last_key = keycode;
176 ir->last_toggle = toggle;
178 ir->keyup_timer.expires = jiffies + UP_TIMEOUT;
179 add_timer(&ir->keyup_timer);
185 static void input_register_keys(struct infrared *ir)
189 set_bit(EV_KEY, ir->input_dev->evbit);
190 set_bit(EV_REP, ir->input_dev->evbit);
191 set_bit(EV_MSC, ir->input_dev->evbit);
193 set_bit(MSC_RAW, ir->input_dev->mscbit);
194 set_bit(MSC_SCAN, ir->input_dev->mscbit);
196 memset(ir->input_dev->keybit, 0, sizeof(ir->input_dev->keybit));
198 for (i = 0; i < ARRAY_SIZE(ir->key_map); i++) {
199 if (ir->key_map[i] > KEY_MAX)
200 ir->key_map[i] = 0;
201 else if (ir->key_map[i] > KEY_RESERVED)
202 set_bit(ir->key_map[i], ir->input_dev->keybit);
205 ir->input_dev->keycode = ir->key_map;
206 ir->input_dev->keycodesize = sizeof(ir->key_map[0]);
207 ir->input_dev->keycodemax = ARRAY_SIZE(ir->key_map);
214 struct infrared *ir = (struct infrared *) parm;
216 ir->delay_timer_finished = 1;
232 if ((av7110->ir.protocol & 1) != ir_protocol[i] ||
233 av7110->ir.inversion != ir_inversion[i])
240 av7110->ir.protocol = IR_RCMM;
241 av7110->ir.ir_config = 0x0001;
243 av7110->ir.protocol = IR_RC5_EXT;
244 av7110->ir.ir_config = 0x0002;
246 av7110->ir.protocol = IR_RC5;
247 av7110->ir.ir_config = 0x0000;
252 av7110->ir.ir_config |= 0x8000;
254 av7110->ir.inversion = ir_inversion[i];
257 av7110->ir.ir_config);
262 if (av7110->ir.device_mask != ir_device_mask[i])
263 av7110->ir.device_mask = ir_device_mask[i];
276 int size = sizeof ir_config + sizeof av_list[0]->ir.key_map;
295 memcpy(av_list[i]->ir.key_map, page + sizeof ir_config,
296 sizeof(av_list[i]->ir.key_map));
306 input_register_keys(&av_list[i]->ir);
320 dprintk(4, "ir command = %08x\n", ircom);
321 av7110->ir.ir_command = ircom;
322 tasklet_schedule(&av7110->ir.ir_tasklet);
338 init_timer(&av7110->ir.keyup_timer);
339 av7110->ir.keyup_timer.function = av7110_emit_keyup;
340 av7110->ir.keyup_timer.data = (unsigned long) &av7110->ir;
346 av7110->ir.input_dev = input_dev;
347 snprintf(av7110->ir.input_phys, sizeof(av7110->ir.input_phys),
352 input_dev->phys = av7110->ir.input_phys;
364 memcpy(av7110->ir.key_map, default_key_map, sizeof av7110->ir.key_map);
365 input_register_keys(&av7110->ir);
372 input_dev->timer.data = (unsigned long) &av7110->ir;
380 tasklet_init(&av7110->ir.ir_tasklet, av7110_emit_key, (unsigned long) &av7110->ir);
381 av7110->ir.ir_handler = ir_handler;
394 del_timer_sync(&av7110->ir.keyup_timer);
395 av7110->ir.ir_handler = NULL;
396 tasklet_kill(&av7110->ir.ir_tasklet);
408 input_unregister_device(av7110->ir.input_dev);