Lines Matching refs:xbox_remote
52 struct xbox_remote { struct
66 struct xbox_remote *xbox_remote = rdev->priv; in xbox_remote_rc_open() argument
69 xbox_remote->irq_urb->dev = xbox_remote->udev; in xbox_remote_rc_open()
70 if (usb_submit_urb(xbox_remote->irq_urb, GFP_KERNEL)) { in xbox_remote_rc_open()
71 dev_err(&xbox_remote->interface->dev, in xbox_remote_rc_open()
81 struct xbox_remote *xbox_remote = rdev->priv; in xbox_remote_rc_close() local
83 usb_kill_urb(xbox_remote->irq_urb); in xbox_remote_rc_close()
91 struct xbox_remote *xbox_remote = urb->context; in xbox_remote_input_report() local
92 unsigned char *data = xbox_remote->inbuf; in xbox_remote_input_report()
110 rc_keydown(xbox_remote->rdev, RC_PROTO_XBOX_DVD, in xbox_remote_input_report()
119 struct xbox_remote *xbox_remote = urb->context; in xbox_remote_irq_in() local
129 dev_dbg(&xbox_remote->interface->dev, in xbox_remote_irq_in()
134 dev_dbg(&xbox_remote->interface->dev, in xbox_remote_irq_in()
141 dev_err(&xbox_remote->interface->dev, in xbox_remote_irq_in()
146 static void xbox_remote_rc_init(struct xbox_remote *xbox_remote) in xbox_remote_rc_init() argument
148 struct rc_dev *rdev = xbox_remote->rdev; in xbox_remote_rc_init()
150 rdev->priv = xbox_remote; in xbox_remote_rc_init()
157 rdev->device_name = xbox_remote->rc_name; in xbox_remote_rc_init()
158 rdev->input_phys = xbox_remote->rc_phys; in xbox_remote_rc_init()
162 usb_to_input_id(xbox_remote->udev, &rdev->input_id); in xbox_remote_rc_init()
163 rdev->dev.parent = &xbox_remote->interface->dev; in xbox_remote_rc_init()
166 static int xbox_remote_initialize(struct xbox_remote *xbox_remote, in xbox_remote_initialize() argument
169 struct usb_device *udev = xbox_remote->udev; in xbox_remote_initialize()
177 usb_fill_int_urb(xbox_remote->irq_urb, udev, pipe, xbox_remote->inbuf, in xbox_remote_initialize()
178 maxp, xbox_remote_irq_in, xbox_remote, in xbox_remote_initialize()
193 struct xbox_remote *xbox_remote; in xbox_remote_probe() local
218 xbox_remote = kzalloc(sizeof(*xbox_remote), GFP_KERNEL); in xbox_remote_probe()
220 if (!xbox_remote || !rc_dev) in xbox_remote_probe()
224 xbox_remote->irq_urb = usb_alloc_urb(0, GFP_KERNEL); in xbox_remote_probe()
225 if (!xbox_remote->irq_urb) in xbox_remote_probe()
228 xbox_remote->udev = udev; in xbox_remote_probe()
229 xbox_remote->rdev = rc_dev; in xbox_remote_probe()
230 xbox_remote->interface = interface; in xbox_remote_probe()
232 usb_make_path(udev, xbox_remote->rc_phys, sizeof(xbox_remote->rc_phys)); in xbox_remote_probe()
234 strlcat(xbox_remote->rc_phys, "/input0", sizeof(xbox_remote->rc_phys)); in xbox_remote_probe()
236 snprintf(xbox_remote->rc_name, sizeof(xbox_remote->rc_name), "%s%s%s", in xbox_remote_probe()
241 if (!strlen(xbox_remote->rc_name)) in xbox_remote_probe()
242 snprintf(xbox_remote->rc_name, sizeof(xbox_remote->rc_name), in xbox_remote_probe()
244 le16_to_cpu(xbox_remote->udev->descriptor.idVendor), in xbox_remote_probe()
245 le16_to_cpu(xbox_remote->udev->descriptor.idProduct)); in xbox_remote_probe()
249 xbox_remote_rc_init(xbox_remote); in xbox_remote_probe()
252 err = xbox_remote_initialize(xbox_remote, endpoint_in); in xbox_remote_probe()
257 err = rc_register_device(xbox_remote->rdev); in xbox_remote_probe()
261 usb_set_intfdata(interface, xbox_remote); in xbox_remote_probe()
266 usb_kill_urb(xbox_remote->irq_urb); in xbox_remote_probe()
268 usb_free_urb(xbox_remote->irq_urb); in xbox_remote_probe()
271 kfree(xbox_remote); in xbox_remote_probe()
281 struct xbox_remote *xbox_remote; in xbox_remote_disconnect() local
283 xbox_remote = usb_get_intfdata(interface); in xbox_remote_disconnect()
285 if (!xbox_remote) { in xbox_remote_disconnect()
290 usb_kill_urb(xbox_remote->irq_urb); in xbox_remote_disconnect()
291 rc_unregister_device(xbox_remote->rdev); in xbox_remote_disconnect()
292 usb_free_urb(xbox_remote->irq_urb); in xbox_remote_disconnect()
293 kfree(xbox_remote); in xbox_remote_disconnect()