• 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/staging/lirc/

Lines Matching defs:ir

222 static int unregister_from_lirc(struct igorplug *ir)
224 struct lirc_driver *d = ir->d;
227 if (!ir->d)
230 devnum = ir->devnum;
238 ir->d = NULL;
239 kfree(ir);
245 struct igorplug *ir = data;
247 if (!ir) {
251 dprintk(DRIVER_NAME "[%d]: set use inc\n", ir->devnum);
253 if (!ir->usbdev)
261 struct igorplug *ir = data;
263 if (!ir) {
267 dprintk(DRIVER_NAME "[%d]: set use dec\n", ir->devnum);
280 struct igorplug *ir = (struct igorplug *)data;
282 if (!ir->usbdev) /* Has the device been removed? */
285 memset(ir->buf_in, 0, ir->len_in);
288 ir->usbdev, usb_rcvctrlpipe(ir->usbdev, 0),
291 ir->buf_in, ir->len_in,
302 ret, ir->buf_in[0], ir->buf_in[1], ir->buf_in[2]);
304 if (ir->buf_in[2] != 0) {
306 ir->devnum);
308 i = DEVICE_HEADERLEN + ir->buf_in[2];
313 timediff = now.tv_sec - ir->last_time.tv_sec;
318 timediff += now.tv_usec - ir->last_time.tv_usec;
320 ir->last_time.tv_sec = now.tv_sec;
321 ir->last_time.tv_usec = now.tv_usec;
326 ir->in_space = 1; /* next comes a pulse */
332 code = (unsigned int)ir->buf_in[i] * 85
333 + (unsigned int)ir->buf_in[i] / 3;
334 if (ir->in_space)
338 ir->in_space ^= 1;
343 ir->usbdev, usb_rcvctrlpipe(ir->usbdev, 0),
346 /*dummy*/ir->buf_in, /*dummy*/ir->len_in,
350 "error %d\n", ir->devnum, ret);
354 ir->devnum, ret);
367 struct igorplug *ir = NULL;
398 ir = kzalloc(sizeof(struct igorplug), GFP_KERNEL);
399 if (!ir) {
409 ir->buf_in = usb_alloc_coherent(dev,
411 GFP_ATOMIC, &ir->dma_in);
412 if (!ir->buf_in) {
421 driver->data = ir;
431 init_waitqueue_head(&ir->wait_out);
442 ir->buf_in, ir->dma_in);
446 kfree(ir);
454 ir->d = driver;
455 ir->devnum = devnum;
456 ir->usbdev = dev;
457 ir->len_in = DEVICE_BUFLEN+DEVICE_HEADERLEN;
458 ir->in_space = 1; /* First mode2 event is a space. */
459 do_gettimeofday(&ir->last_time);
473 ret = usb_control_msg(ir->usbdev, usb_rcvctrlpipe(ir->usbdev, 0),
476 /*dummy*/ir->buf_in, /*dummy*/ir->len_in,
482 usb_set_intfdata(intf, ir);
490 struct igorplug *ir = usb_get_intfdata(intf);
493 if (!ir || !ir->d)
496 ir->usbdev = NULL;
497 wake_up_all(&ir->wait_out);
499 usb_free_coherent(dev, ir->len_in, ir->buf_in, ir->dma_in);
501 unregister_from_lirc(ir);