Lines Matching refs:dev

26 static int uvc_input_init(struct uvc_device *dev)  in uvc_input_init()  argument
35 usb_make_path(dev->udev, dev->input_phys, sizeof(dev->input_phys)); in uvc_input_init()
36 strlcat(dev->input_phys, "/button", sizeof(dev->input_phys)); in uvc_input_init()
38 input->name = dev->name; in uvc_input_init()
39 input->phys = dev->input_phys; in uvc_input_init()
40 usb_to_input_id(dev->udev, &input->id); in uvc_input_init()
41 input->dev.parent = &dev->intf->dev; in uvc_input_init()
49 dev->input = input; in uvc_input_init()
57 static void uvc_input_cleanup(struct uvc_device *dev) in uvc_input_cleanup() argument
59 if (dev->input) in uvc_input_cleanup()
60 input_unregister_device(dev->input); in uvc_input_cleanup()
63 static void uvc_input_report_key(struct uvc_device *dev, unsigned int code, in uvc_input_report_key() argument
66 if (dev->input) { in uvc_input_report_key()
67 input_report_key(dev->input, code, value); in uvc_input_report_key()
68 input_sync(dev->input); in uvc_input_report_key()
73 #define uvc_input_init(dev) argument
74 #define uvc_input_cleanup(dev) argument
75 #define uvc_input_report_key(dev, code, value) argument
81 static void uvc_event_streaming(struct uvc_device *dev, __u8 *data, int len) in uvc_event_streaming() argument
94 uvc_input_report_key(dev, KEY_CAMERA, data[3]); in uvc_event_streaming()
101 static void uvc_event_control(struct uvc_device *dev, __u8 *data, int len) in uvc_event_control() argument
117 struct uvc_device *dev = urb->context; in uvc_status_complete() local
139 switch (dev->status[0] & 0x0f) { in uvc_status_complete()
141 uvc_event_control(dev, dev->status, len); in uvc_status_complete()
145 uvc_event_streaming(dev, dev->status, len); in uvc_status_complete()
150 "type %u.\n", dev->status[0]); in uvc_status_complete()
156 urb->interval = dev->int_ep->desc.bInterval; in uvc_status_complete()
163 int uvc_status_init(struct uvc_device *dev) in uvc_status_init() argument
165 struct usb_host_endpoint *ep = dev->int_ep; in uvc_status_init()
172 uvc_input_init(dev); in uvc_status_init()
174 dev->status = kzalloc(UVC_MAX_STATUS_SIZE, GFP_KERNEL); in uvc_status_init()
175 if (dev->status == NULL) in uvc_status_init()
178 dev->int_urb = usb_alloc_urb(0, GFP_KERNEL); in uvc_status_init()
179 if (dev->int_urb == NULL) { in uvc_status_init()
180 kfree(dev->status); in uvc_status_init()
184 pipe = usb_rcvintpipe(dev->udev, ep->desc.bEndpointAddress); in uvc_status_init()
190 if (interval > 16 && dev->udev->speed == USB_SPEED_HIGH && in uvc_status_init()
191 (dev->quirks & UVC_QUIRK_STATUS_INTERVAL)) in uvc_status_init()
194 usb_fill_int_urb(dev->int_urb, dev->udev, pipe, in uvc_status_init()
195 dev->status, UVC_MAX_STATUS_SIZE, uvc_status_complete, in uvc_status_init()
196 dev, interval); in uvc_status_init()
201 void uvc_status_cleanup(struct uvc_device *dev) in uvc_status_cleanup() argument
203 usb_kill_urb(dev->int_urb); in uvc_status_cleanup()
204 usb_free_urb(dev->int_urb); in uvc_status_cleanup()
205 kfree(dev->status); in uvc_status_cleanup()
206 uvc_input_cleanup(dev); in uvc_status_cleanup()
209 int uvc_status_start(struct uvc_device *dev, gfp_t flags) in uvc_status_start() argument
211 if (dev->int_urb == NULL) in uvc_status_start()
214 return usb_submit_urb(dev->int_urb, flags); in uvc_status_start()
217 void uvc_status_stop(struct uvc_device *dev) in uvc_status_stop() argument
219 usb_kill_urb(dev->int_urb); in uvc_status_stop()