Lines Matching defs:usb_ahd

202 	usb_ah_state_t	*usb_ahd;
219 usb_ahd = kmem_zalloc(sizeof (usb_ah_state_t), KM_SLEEP);
222 "usb_ah_state= 0x%p", (void *)usb_ahd);
224 mutex_init(&usb_ahd->usb_ah_mutex, NULL, MUTEX_DRIVER, NULL);
229 usb_ahd->usb_ah_readq = q;
230 usb_ahd->usb_ah_writeq = WR(q);
236 q->q_ptr = (caddr_t)usb_ahd;
237 WR(q)->q_ptr = (caddr_t)usb_ahd;
248 mutex_destroy(&usb_ahd->usb_ah_mutex);
249 kmem_free(usb_ahd, sizeof (*usb_ahd));
254 putnext(usb_ahd->usb_ah_writeq, mctl_ptr);
260 usb_ahd->usb_ah_flags |= USB_AH_QWAIT;
261 while (usb_ahd->usb_ah_flags & USB_AH_QWAIT) {
264 usb_ahd->usb_ah_flags = 0;
266 mutex_destroy(&usb_ahd->usb_ah_mutex);
267 kmem_free(usb_ahd, sizeof (*usb_ahd));
273 if (usb_ahd->usb_ah_report_descr != NULL) {
275 usb_ahd->usb_ah_report_descr, &hpack);
278 usb_ahd->usb_ah_packet_size = (hpack.max_packet_size + 7) / 8;
281 usb_ahd->usb_ah_uses_report_ids = 0;
282 usb_ahd->usb_ah_report_id = HID_REPORT_ID_UNDEFINED;
284 usb_ahd->usb_ah_uses_report_ids = 1;
285 usb_ahd->usb_ah_report_id = hpack.report_id;
287 usb_ahd->usb_ah_packet_size++;
290 if (usb_ah_get_cooked_rd(usb_ahd) != USB_SUCCESS) {
292 mutex_destroy(&usb_ahd->usb_ah_mutex);
293 kmem_free(usb_ahd, sizeof (*usb_ahd));
302 mutex_destroy(&usb_ahd->usb_ah_mutex);
303 kmem_free(usb_ahd, sizeof (*usb_ahd));
308 usb_ahd->usb_ah_flags |= USB_AH_OPEN;
322 usb_ah_state_t *usb_ahd = (usb_ah_state_t *)q->q_ptr;
324 mutex_enter(&usb_ahd->usb_ah_mutex);
331 usb_ahd->usb_ah_flags = 0;
332 usb_ah_cancel_timeout(usb_ahd);
337 mutex_exit(&usb_ahd->usb_ah_mutex);
343 mutex_destroy(&usb_ahd->usb_ah_mutex);
344 kmem_free(usb_ahd, sizeof (usb_ah_state_t));
357 usb_ah_state_t *usb_ahd;
359 usb_ahd = (usb_ah_state_t *)q->q_ptr;
361 if (usb_ahd == 0) {
370 if (!(usb_ahd->usb_ah_flags & USB_AH_OPEN)) {
373 } else if (MBLKL(mp) == usb_ahd->usb_ah_packet_size) {
379 if ((usb_ahd->usb_ah_report_id ==
381 (usb_ahd->usb_ah_report_id == (int)*mp->b_rptr)) {
383 usb_ah_check_usage_send_data(usb_ahd, mp);
427 register usb_ah_state_t *usb_ahd = (usb_ah_state_t *)q->q_ptr;
442 usb_ahd->usb_ah_report_descr =
445 usb_ahd->usb_ah_report_descr = NULL;
448 usb_ahd->usb_ah_flags &= ~USB_AH_QWAIT;
457 usb_ah_cancel_timeout(usb_ahd);
480 usb_ah_repeat_send(usb_ah_state_t *usb_ahd, usb_ah_button_descr_t *bd,
491 mutex_exit(&usb_ahd->usb_ah_mutex);
492 putnext(usb_ahd->usb_ah_readq, dup_mp);
493 mutex_enter(&usb_ahd->usb_ah_mutex);
496 usb_ahd->usb_ah_cur_bd = bd;
497 usb_ahd->usb_ah_tid = qtimeout(usb_ahd->usb_ah_readq,
511 usb_ah_state_t *usb_ahd;
515 usb_ahd = (usb_ah_state_t *)bd->uahp;
517 mutex_enter(&usb_ahd->usb_ah_mutex);
523 if (usb_ahd->usb_ah_tid) {
526 mutex_exit(&usb_ahd->usb_ah_mutex);
527 putnext(usb_ahd->usb_ah_readq, dup_mp);
528 mutex_enter(&usb_ahd->usb_ah_mutex);
531 usb_ahd->usb_ah_cur_bd = bd;
532 usb_ahd->usb_ah_tid = qtimeout(usb_ahd->usb_ah_readq,
536 mutex_exit(&usb_ahd->usb_ah_mutex);
545 usb_ah_cancel_timeout(usb_ah_state_t *usb_ahd)
547 queue_t *rq = usb_ahd->usb_ah_readq;
549 if (usb_ahd->usb_ah_tid) {
550 (void) quntimeout(rq, usb_ahd->usb_ah_tid);
551 usb_ahd->usb_ah_tid = 0;
552 usb_ahd->usb_ah_cur_bd->pressed = 0;
553 freemsg(usb_ahd->usb_ah_cur_bd->mblk);
554 usb_ahd->usb_ah_cur_bd = NULL;
610 usb_ah_get_cooked_rd(usb_ah_state_t *usb_ahd)
619 rpt = &(usb_ahd->usb_ah_report[USB_AH_INPUT_RPT]);
620 hid_rpt = &(usb_ahd->usb_ah_report[USB_AH_INPUT_RPT].hid_rpt);
623 usb_ahd->usb_ah_report_descr,
624 usb_ahd->usb_ah_report_id,
651 usb_ahd->usb_ah_report_descr,
652 usb_ahd->usb_ah_report_id,
683 usb_ah_check_usage_send_data(usb_ah_state_t *usb_ahd, mblk_t *mp)
694 mutex_enter(&usb_ahd->usb_ah_mutex);
695 rpt = &(usb_ahd->usb_ah_report[USB_AH_INPUT_RPT]);
696 hid_rpt = &(usb_ahd->usb_ah_report[USB_AH_INPUT_RPT].hid_rpt);
701 bd->uahp = (void *)usb_ahd;
706 "no_of_bits=%d", usb_ahd->usb_ah_uses_report_ids,
753 mutex_exit(&usb_ahd->
755 putnext(usb_ahd->usb_ah_readq,
757 mutex_enter(&usb_ahd->
781 usb_ah_cancel_timeout(usb_ahd);
785 usb_ah_repeat_send(usb_ahd, bd,
790 usb_ah_cancel_timeout(usb_ahd);
802 mutex_exit(&usb_ahd->usb_ah_mutex);
803 putnext(usb_ahd->usb_ah_readq,
805 mutex_enter(&usb_ahd->usb_ah_mutex);
818 mutex_exit(&usb_ahd->usb_ah_mutex);