• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/drivers/input/misc/

Lines Matching refs:ar2

232 static int ati_remote2_submit_urbs(struct ati_remote2 *ar2)
236 r = usb_submit_urb(ar2->urb[0], GFP_KERNEL);
238 dev_err(&ar2->intf[0]->dev,
242 r = usb_submit_urb(ar2->urb[1], GFP_KERNEL);
244 usb_kill_urb(ar2->urb[0]);
245 dev_err(&ar2->intf[1]->dev,
253 static void ati_remote2_kill_urbs(struct ati_remote2 *ar2)
255 usb_kill_urb(ar2->urb[1]);
256 usb_kill_urb(ar2->urb[0]);
261 struct ati_remote2 *ar2 = input_get_drvdata(idev);
264 dev_dbg(&ar2->intf[0]->dev, "%s()\n", __func__);
266 r = usb_autopm_get_interface(ar2->intf[0]);
268 dev_err(&ar2->intf[0]->dev,
275 if (!(ar2->flags & ATI_REMOTE2_SUSPENDED)) {
276 r = ati_remote2_submit_urbs(ar2);
281 ar2->flags |= ATI_REMOTE2_OPENED;
285 usb_autopm_put_interface(ar2->intf[0]);
291 usb_autopm_put_interface(ar2->intf[0]);
298 struct ati_remote2 *ar2 = input_get_drvdata(idev);
300 dev_dbg(&ar2->intf[0]->dev, "%s()\n", __func__);
304 if (!(ar2->flags & ATI_REMOTE2_SUSPENDED))
305 ati_remote2_kill_urbs(ar2);
307 ar2->flags &= ~ATI_REMOTE2_OPENED;
312 static void ati_remote2_input_mouse(struct ati_remote2 *ar2)
314 struct input_dev *idev = ar2->idev;
315 u8 *data = ar2->buf[0];
320 if (!((1 << channel) & ar2->channel_mask))
326 dev_err(&ar2->intf[0]->dev,
332 if (!((1 << mode) & ar2->mode_mask))
351 static void ati_remote2_input_key(struct ati_remote2 *ar2)
353 struct input_dev *idev = ar2->idev;
354 u8 *data = ar2->buf[1];
359 if (!((1 << channel) & ar2->channel_mask))
365 dev_err(&ar2->intf[1]->dev,
380 if (ar2->mode == mode)
384 ar2->mode = mode;
387 if (!((1 << mode) & ar2->mode_mask))
392 dev_err(&ar2->intf[1]->dev,
402 ar2->jiffies = jiffies + msecs_to_jiffies(idev->rep[REP_DELAY]);
407 if (ar2->keycode[mode][index] == BTN_LEFT ||
408 ar2->keycode[mode][index] == BTN_RIGHT)
411 if (!time_after_eq(jiffies, ar2->jiffies))
414 ar2->jiffies = jiffies + msecs_to_jiffies(idev->rep[REP_PERIOD]);
417 dev_err(&ar2->intf[1]->dev,
423 input_event(idev, EV_KEY, ar2->keycode[mode][index], data[1]);
429 struct ati_remote2 *ar2 = urb->context;
434 usb_mark_last_busy(ar2->udev);
435 ati_remote2_input_mouse(ar2);
441 dev_dbg(&ar2->intf[0]->dev,
445 usb_mark_last_busy(ar2->udev);
446 dev_err(&ar2->intf[0]->dev,
452 dev_err(&ar2->intf[0]->dev,
458 struct ati_remote2 *ar2 = urb->context;
463 usb_mark_last_busy(ar2->udev);
464 ati_remote2_input_key(ar2);
470 dev_dbg(&ar2->intf[1]->dev,
474 usb_mark_last_busy(ar2->udev);
475 dev_err(&ar2->intf[1]->dev,
481 dev_err(&ar2->intf[1]->dev,
488 struct ati_remote2 *ar2 = input_get_drvdata(idev);
493 if (mode > ATI_REMOTE2_PC || !((1 << mode) & ar2->mode_mask))
500 *keycode = ar2->keycode[mode][index];
507 struct ati_remote2 *ar2 = input_get_drvdata(idev);
512 if (mode > ATI_REMOTE2_PC || !((1 << mode) & ar2->mode_mask))
519 old_keycode = ar2->keycode[mode][index];
520 ar2->keycode[mode][index] = keycode;
525 if (ar2->keycode[mode][index] == old_keycode)
535 static int ati_remote2_input_init(struct ati_remote2 *ar2)
544 ar2->idev = idev;
545 input_set_drvdata(idev, ar2);
554 ar2->keycode[mode][index] = ati_remote2_key_table[index].keycode;
555 __set_bit(ar2->keycode[mode][index], idev->keybit);
561 ar2->keycode[ATI_REMOTE2_AUX1][index] = KEY_PROG1;
562 ar2->keycode[ATI_REMOTE2_AUX2][index] = KEY_PROG2;
563 ar2->keycode[ATI_REMOTE2_AUX3][index] = KEY_PROG3;
564 ar2->keycode[ATI_REMOTE2_AUX4][index] = KEY_PROG4;
565 ar2->keycode[ATI_REMOTE2_PC][index] = KEY_PC;
581 idev->name = ar2->name;
582 idev->phys = ar2->phys;
584 usb_to_input_id(ar2->udev, &idev->id);
585 idev->dev.parent = &ar2->udev->dev;
594 static int ati_remote2_urb_init(struct ati_remote2 *ar2)
596 struct usb_device *udev = ar2->udev;
600 ar2->buf[i] = usb_alloc_coherent(udev, 4, GFP_KERNEL, &ar2->buf_dma[i]);
601 if (!ar2->buf[i])
604 ar2->urb[i] = usb_alloc_urb(0, GFP_KERNEL);
605 if (!ar2->urb[i])
608 pipe = usb_rcvintpipe(udev, ar2->ep[i]->bEndpointAddress);
612 usb_fill_int_urb(ar2->urb[i], udev, pipe, ar2->buf[i], maxp,
614 ar2, ar2->ep[i]->bInterval);
615 ar2->urb[i]->transfer_dma = ar2->buf_dma[i];
616 ar2->urb[i]->transfer_flags |= URB_NO_TRANSFER_DMA_MAP;
622 static void ati_remote2_urb_cleanup(struct ati_remote2 *ar2)
627 usb_free_urb(ar2->urb[i]);
628 usb_free_coherent(ar2->udev, 4, ar2->buf[i], ar2->buf_dma[i]);
632 static int ati_remote2_setup(struct ati_remote2 *ar2, unsigned int ch_mask)
654 r = usb_control_msg(ar2->udev, usb_sndctrlpipe(ar2->udev, 0),
659 dev_err(&ar2->udev->dev, "%s - failed to set channel due to error: %d\n",
673 struct ati_remote2 *ar2 = usb_get_intfdata(intf);
675 return sprintf(buf, "0x%04x\n", ar2->channel_mask);
684 struct ati_remote2 *ar2 = usb_get_intfdata(intf);
694 r = usb_autopm_get_interface(ar2->intf[0]);
696 dev_err(&ar2->intf[0]->dev,
703 if (mask != ar2->channel_mask && !ati_remote2_setup(ar2, mask))
704 ar2->channel_mask = mask;
708 usb_autopm_put_interface(ar2->intf[0]);
719 struct ati_remote2 *ar2 = usb_get_intfdata(intf);
721 return sprintf(buf, "0x%02x\n", ar2->mode_mask);
730 struct ati_remote2 *ar2 = usb_get_intfdata(intf);
739 ar2->mode_mask = mask;
764 struct ati_remote2 *ar2;
770 ar2 = kzalloc(sizeof (struct ati_remote2), GFP_KERNEL);
771 if (!ar2)
774 ar2->udev = udev;
776 ar2->intf[0] = interface;
777 ar2->ep[0] = &alt->endpoint[0].desc;
779 ar2->intf[1] = usb_ifnum_to_if(udev, 1);
780 r = usb_driver_claim_interface(&ati_remote2_driver, ar2->intf[1], ar2);
783 alt = ar2->intf[1]->cur_altsetting;
784 ar2->ep[1] = &alt->endpoint[0].desc;
786 r = ati_remote2_urb_init(ar2);
790 ar2->channel_mask = channel_mask;
791 ar2->mode_mask = mode_mask;
793 r = ati_remote2_setup(ar2, ar2->channel_mask);
797 usb_make_path(udev, ar2->phys, sizeof(ar2->phys));
798 strlcat(ar2->phys, "/input0", sizeof(ar2->phys));
800 strlcat(ar2->name, "ATI Remote Wonder II", sizeof(ar2->name));
806 r = ati_remote2_input_init(ar2);
810 usb_set_intfdata(interface, ar2);
819 ati_remote2_urb_cleanup(ar2);
820 usb_driver_release_interface(&ati_remote2_driver, ar2->intf[1]);
822 kfree(ar2);
829 struct ati_remote2 *ar2;
835 ar2 = usb_get_intfdata(interface);
838 input_unregister_device(ar2->idev);
840 sysfs_remove_group(&ar2->udev->dev.kobj, &ati_remote2_attr_group);
842 ati_remote2_urb_cleanup(ar2);
844 usb_driver_release_interface(&ati_remote2_driver, ar2->intf[1]);
846 kfree(ar2);
852 struct ati_remote2 *ar2;
858 ar2 = usb_get_intfdata(interface);
860 dev_dbg(&ar2->intf[0]->dev, "%s()\n", __func__);
864 if (ar2->flags & ATI_REMOTE2_OPENED)
865 ati_remote2_kill_urbs(ar2);
867 ar2->flags |= ATI_REMOTE2_SUSPENDED;
876 struct ati_remote2 *ar2;
883 ar2 = usb_get_intfdata(interface);
885 dev_dbg(&ar2->intf[0]->dev, "%s()\n", __func__);
889 if (ar2->flags & ATI_REMOTE2_OPENED)
890 r = ati_remote2_submit_urbs(ar2);
893 ar2->flags &= ~ATI_REMOTE2_SUSPENDED;
902 struct ati_remote2 *ar2;
909 ar2 = usb_get_intfdata(interface);
911 dev_dbg(&ar2->intf[0]->dev, "%s()\n", __func__);
915 r = ati_remote2_setup(ar2, ar2->channel_mask);
919 if (ar2->flags & ATI_REMOTE2_OPENED)
920 r = ati_remote2_submit_urbs(ar2);
923 ar2->flags &= ~ATI_REMOTE2_SUSPENDED;
933 struct ati_remote2 *ar2;
939 ar2 = usb_get_intfdata(interface);
941 dev_dbg(&ar2->intf[0]->dev, "%s()\n", __func__);
945 if (ar2->flags == ATI_REMOTE2_OPENED)
946 ati_remote2_kill_urbs(ar2);
953 struct ati_remote2 *ar2;
960 ar2 = usb_get_intfdata(interface);
962 dev_dbg(&ar2->intf[0]->dev, "%s()\n", __func__);
964 if (ar2->flags == ATI_REMOTE2_OPENED)
965 r = ati_remote2_submit_urbs(ar2);