Lines Matching full:event

23  * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
54 ** HCI event processing module
59 * Event processing routines
83 * Process HCI event packet
87 ng_hci_process_event(ng_hci_unit_p unit, struct mbuf *event)
92 /* Get event packet header */
93 NG_HCI_M_PULLUP(event, sizeof(*hdr));
94 if (event == NULL)
97 hdr = mtod(event, ng_hci_event_pkt_t *);
100 "%s: %s - got HCI event=%#x, length=%d\n",
101 __func__, NG_NODE_NAME(unit->node), hdr->event, hdr->length);
103 /* Get rid of event header and process event */
104 m_adj(event, sizeof(*hdr));
106 switch (hdr->event) {
126 NG_FREE_M(event);
129 error = le_event(unit, event);
133 error = inquiry_result(unit, event);
137 error = con_compl(unit, event);
141 error = con_req(unit, event);
145 error = discon_compl(unit, event);
149 error = encryption_change(unit, event);
153 error = read_remote_features_compl(unit, event);
157 error = qos_setup_compl(unit, event);
161 error = ng_hci_process_command_complete(unit, event);
165 error = ng_hci_process_command_status(unit, event);
169 error = hardware_error(unit, event);
173 error = role_change(unit, event);
177 error = num_compl_pkts(unit, event);
181 error = mode_change(unit, event);
185 error = data_buffer_overflow(unit, event);
189 error = read_clock_offset_compl(unit, event);
193 error = qos_violation(unit, event);
197 error = page_scan_mode_change(unit, event);
201 error = page_scan_rep_mode_change(unit, event);
205 NG_FREE_M(event);
376 /* le meta event */
377 /* Inquiry result event */
379 le_advertizing_report(ng_hci_unit_p unit, struct mbuf *event)
388 NG_HCI_M_PULLUP(event, sizeof(*ep));
389 if (event == NULL)
392 ep = mtod(event, ng_hci_le_advertising_report_ep *);
394 m_adj(event, sizeof(*ep));
399 m_adj(event, sizeof(u_int8_t));
402 NG_HCI_M_PULLUP(event, sizeof(u_int8_t));
403 if (event == NULL) {
407 addr_type = *mtod(event, u_int8_t *);
408 m_adj(event, sizeof(u_int8_t));
410 m_copydata(event, 0, sizeof(bdaddr), (caddr_t) &bdaddr);
411 m_adj(event, sizeof(bdaddr));
436 event = m_pullup(event, sizeof(u_int8_t));
437 if(event == NULL){
438 NG_HCI_WARN("%s: Event datasize Pullup Failed\n", __func__);
441 length_data = *mtod(event, u_int8_t *);
442 m_adj(event, sizeof(u_int8_t));
447 event = m_pullup(event, n->extinq_size);
448 if(event == NULL){
449 NG_HCI_WARN("%s: Event data pullup Failed\n", __func__);
452 m_copydata(event, 0, n->extinq_size, n->extinq_data);
453 m_adj(event, n->extinq_size);
454 event = m_pullup(event, sizeof(char ));
456 if(event == NULL){
457 NG_HCI_WARN("%s: Event rssi pull up Failed\n", __func__);
461 n->page_scan_mode = *mtod(event, char *);
462 m_adj(event, sizeof(u_int8_t));
466 NG_FREE_M(event);
471 static int le_connection_complete(ng_hci_unit_p unit, struct mbuf *event)
480 NG_HCI_M_PULLUP(event, sizeof(*ep));
481 if (event == NULL)
484 ep = mtod(event, ng_hci_le_connection_complete_ep *);
507 * ignore Connection_Complete event and let timeout deal with it.
565 NG_FREE_M(event);
571 static int le_connection_update(ng_hci_unit_p unit, struct mbuf *event)
576 NG_FREE_M(event);
581 le_event(ng_hci_unit_p unit, struct mbuf *event)
586 NG_HCI_M_PULLUP(event, sizeof(*lep));
587 if(event ==NULL){
590 lep = mtod(event, ng_hci_le_ep *);
591 m_adj(event, sizeof(*lep));
594 le_connection_complete(unit, event);
597 le_advertizing_report(unit, event);
600 le_connection_update(unit, event);
609 NG_FREE_M(event);
614 /* Inquiry result event */
616 inquiry_result(ng_hci_unit_p unit, struct mbuf *event)
623 NG_HCI_M_PULLUP(event, sizeof(*ep));
624 if (event == NULL)
627 ep = mtod(event, ng_hci_inquiry_result_ep *);
628 m_adj(event, sizeof(*ep));
632 m_copydata(event, 0, sizeof(bdaddr), (caddr_t) &bdaddr);
633 m_adj(event, sizeof(bdaddr));
652 n->page_scan_rep_mode = *mtod(event, u_int8_t *);
653 m_adj(event, sizeof(u_int8_t));
656 m_adj(event, sizeof(u_int8_t));
658 n->page_scan_mode = *mtod(event, u_int8_t *);
659 m_adj(event, sizeof(u_int8_t));
662 m_adj(event, NG_HCI_CLASS_SIZE);
665 m_copydata(event, 0, sizeof(n->clock_offset),
670 NG_FREE_M(event);
675 /* Connection complete event */
677 con_compl(ng_hci_unit_p unit, struct mbuf *event)
683 NG_HCI_M_PULLUP(event, sizeof(*ep));
684 if (event == NULL)
687 ep = mtod(event, ng_hci_con_compl_ep *);
710 * ignore Connection_Complete event and let timeout deal with it.
796 NG_FREE_M(event);
801 /* Connection request event */
803 con_req(ng_hci_unit_p unit, struct mbuf *event)
809 NG_HCI_M_PULLUP(event, sizeof(*ep));
810 if (event == NULL)
813 ep = mtod(event, ng_hci_con_req_ep *);
840 * Connection_Request event. This probably will cause connect
881 NG_FREE_M(event);
886 /* Disconnect complete event */
888 discon_compl(ng_hci_unit_p unit, struct mbuf *event)
895 NG_HCI_M_PULLUP(event, sizeof(*ep));
896 if (event == NULL)
899 ep = mtod(event, ng_hci_discon_compl_ep *);
927 NG_FREE_M(event);
932 /* Encryption change event */
934 encryption_change(ng_hci_unit_p unit, struct mbuf *event)
941 NG_HCI_M_PULLUP(event, sizeof(*ep));
942 if (event == NULL)
945 ep = mtod(event, ng_hci_encryption_change_ep *);
974 NG_FREE_M(event);
979 /* Read remote feature complete event */
981 read_remote_features_compl(ng_hci_unit_p unit, struct mbuf *event)
989 NG_HCI_M_PULLUP(event, sizeof(*ep));
990 if (event == NULL)
993 ep = mtod(event, ng_hci_read_remote_features_compl_ep *);
1027 NG_FREE_M(event);
1032 /* QoS setup complete event */
1034 qos_setup_compl(ng_hci_unit_p unit, struct mbuf *event)
1041 NG_HCI_M_PULLUP(event, sizeof(*ep));
1042 if (event == NULL)
1045 ep = mtod(event, ng_hci_qos_setup_compl_ep *);
1069 NG_FREE_M(event);
1074 /* Hardware error event */
1076 hardware_error(ng_hci_unit_p unit, struct mbuf *event)
1080 __func__, NG_NODE_NAME(unit->node), *mtod(event, u_int8_t *));
1082 NG_FREE_M(event);
1087 /* Role change event */
1089 role_change(ng_hci_unit_p unit, struct mbuf *event)
1094 NG_HCI_M_PULLUP(event, sizeof(*ep));
1095 if (event == NULL)
1098 ep = mtod(event, ng_hci_role_change_ep *);
1119 NG_FREE_M(event);
1124 /* Number of completed packets event */
1126 num_compl_pkts(ng_hci_unit_p unit, struct mbuf *event)
1132 NG_HCI_M_PULLUP(event, sizeof(*ep));
1133 if (event == NULL)
1136 ep = mtod(event, ng_hci_num_compl_pkts_ep *);
1137 m_adj(event, sizeof(*ep));
1141 m_copydata(event, 0, sizeof(h), (caddr_t) &h);
1142 m_adj(event, sizeof(h));
1146 m_copydata(event, 0, sizeof(p), (caddr_t) &p);
1147 m_adj(event, sizeof(p));
1174 NG_FREE_M(event);
1182 /* Mode change event */
1184 mode_change(ng_hci_unit_p unit, struct mbuf *event)
1190 NG_HCI_M_PULLUP(event, sizeof(*ep));
1191 if (event == NULL)
1194 ep = mtod(event, ng_hci_mode_change_ep *);
1218 NG_FREE_M(event);
1223 /* Data buffer overflow event */
1225 data_buffer_overflow(ng_hci_unit_p unit, struct mbuf *event)
1230 (*mtod(event, u_int8_t *) == NG_HCI_LINK_ACL)? "ACL" : "SCO");
1232 NG_FREE_M(event);
1237 /* Read clock offset complete event */
1239 read_clock_offset_compl(ng_hci_unit_p unit, struct mbuf *event)
1246 NG_HCI_M_PULLUP(event, sizeof(*ep));
1247 if (event == NULL)
1250 ep = mtod(event, ng_hci_read_clock_offset_compl_ep *);
1284 NG_FREE_M(event);
1289 /* QoS violation event */
1291 qos_violation(ng_hci_unit_p unit, struct mbuf *event)
1298 NG_HCI_M_PULLUP(event, sizeof(*ep));
1299 if (event == NULL)
1302 ep = mtod(event, ng_hci_qos_violation_ep *);
1325 NG_FREE_M(event);
1330 /* Page scan mode change event */
1332 page_scan_mode_change(ng_hci_unit_p unit, struct mbuf *event)
1338 NG_HCI_M_PULLUP(event, sizeof(*ep));
1339 if (event == NULL)
1342 ep = mtod(event, ng_hci_page_scan_mode_change_ep *);
1360 NG_FREE_M(event);
1365 /* Page scan repetition mode change event */
1367 page_scan_rep_mode_change(ng_hci_unit_p unit, struct mbuf *event)
1373 NG_HCI_M_PULLUP(event, sizeof(*ep));
1374 if (event == NULL)
1377 ep = mtod(event, ng_hci_page_scan_rep_mode_change_ep *);
1395 NG_FREE_M(event);