Home | History | Annotate | Download | only in hci

Lines Matching refs:p_evt_data

39 static void nfa_hci_api_register (tNFA_HCI_EVENT_DATA *p_evt_data);
40 static void nfa_hci_api_get_gate_pipe_list (tNFA_HCI_EVENT_DATA *p_evt_data);
41 static void nfa_hci_api_alloc_gate (tNFA_HCI_EVENT_DATA *p_evt_data);
42 static void nfa_hci_api_get_host_list (tNFA_HCI_EVENT_DATA *p_evt_data);
43 static BOOLEAN nfa_hci_api_get_reg_value (tNFA_HCI_EVENT_DATA *p_evt_data);
44 static BOOLEAN nfa_hci_api_set_reg_value (tNFA_HCI_EVENT_DATA *p_evt_data);
45 static BOOLEAN nfa_hci_api_create_pipe (tNFA_HCI_EVENT_DATA *p_evt_data);
46 static void nfa_hci_api_open_pipe (tNFA_HCI_EVENT_DATA *p_evt_data);
47 static void nfa_hci_api_close_pipe (tNFA_HCI_EVENT_DATA *p_evt_data);
48 static void nfa_hci_api_delete_pipe (tNFA_HCI_EVENT_DATA *p_evt_data);
49 static BOOLEAN nfa_hci_api_send_event (tNFA_HCI_EVENT_DATA *p_evt_data);
50 static BOOLEAN nfa_hci_api_send_cmd (tNFA_HCI_EVENT_DATA *p_evt_data);
51 static void nfa_hci_api_send_rsp (tNFA_HCI_EVENT_DATA *p_evt_data);
52 static void nfa_hci_api_add_static_pipe (tNFA_HCI_EVENT_DATA *p_evt_data);
74 tNFA_HCI_EVENT_DATA *p_evt_data;
83 p_evt_data = (tNFA_HCI_EVENT_DATA *)p_msg;
86 nfa_hci_cb.app_in_use = p_evt_data->comm.hci_handle;
92 if (nfa_hci_api_create_pipe (p_evt_data) == FALSE)
97 if (nfa_hci_api_get_reg_value (p_evt_data) == FALSE)
102 if (nfa_hci_api_set_reg_value (p_evt_data) == FALSE)
107 if (nfa_hci_api_send_cmd (p_evt_data) == FALSE)
111 if (nfa_hci_api_send_event (p_evt_data) == FALSE)
132 tNFA_HCI_EVENT_DATA *p_evt_data;
142 p_evt_data = (tNFA_HCI_EVENT_DATA *)p_msg;
145 nfa_hci_cb.app_in_use = p_evt_data->comm.hci_handle;
150 nfa_hci_api_register (p_evt_data);
154 nfa_hci_api_deregister (p_evt_data);
158 nfa_hci_api_get_gate_pipe_list (p_evt_data);
162 nfa_hci_api_alloc_gate (p_evt_data);
166 nfa_hci_api_dealloc_gate (p_evt_data);
170 nfa_hci_api_get_host_list (p_evt_data);
174 if (nfa_hci_api_get_reg_value (p_evt_data) == FALSE)
179 if (nfa_hci_api_set_reg_value (p_evt_data) == FALSE)
184 if (nfa_hci_api_create_pipe (p_evt_data) == FALSE)
189 nfa_hci_api_open_pipe (p_evt_data);
193 nfa_hci_api_close_pipe (p_evt_data);
197 nfa_hci_api_delete_pipe (p_evt_data);
201 if (nfa_hci_api_send_cmd (p_evt_data) == FALSE)
206 nfa_hci_api_send_rsp (p_evt_data);
210 if (nfa_hci_api_send_event (p_evt_data) == FALSE)
215 nfa_hci_api_add_static_pipe (p_evt_data);
236 static void nfa_hci_api_register (tNFA_HCI_EVENT_DATA *p_evt_data)
239 char *p_app_name = p_evt_data->app_info.app_name;
240 tNFA_HCI_CBACK *p_cback = p_evt_data->app_info.p_cback;
290 p_evt_data->app_info.p_cback (NFA_HCI_REGISTER_EVT, &evt_data);
299 nfa_hci_cb.cfg.b_send_conn_evts[xx] = p_evt_data->app_info.b_send_conn_evts;
306 p_evt_data->app_info.p_cback (NFA_HCI_REGISTER_EVT, &evt_data);
318 void nfa_hci_api_deregister (tNFA_HCI_EVENT_DATA *p_evt_data)
327 if (p_evt_data != NULL)
332 && !strncmp (p_evt_data->app_info.app_name, &nfa_hci_cb.cfg.reg_app_names[xx][0], strlen (p_evt_data->app_info.app_name)) )
334 NFA_TRACE_EVENT2 ("nfa_hci_api_deregister (%s) inx: %u", p_evt_data->app_info.app_name, xx);
341 NFA_TRACE_WARNING1 ("nfa_hci_api_deregister () Unknown app: %s", p_evt_data->app_info.app_name);
414 static void nfa_hci_api_get_gate_pipe_list (tNFA_HCI_EVENT_DATA *p_evt_data)
426 if (pg->gate_owner == p_evt_data->get_gate_pipe_list.hci_handle)
458 nfa_hciu_send_to_app (NFA_HCI_GET_GATE_PIPE_LIST_EVT, &evt_data, p_evt_data->get_gate_pipe_list.hci_handle);
470 static void nfa_hci_api_alloc_gate (tNFA_HCI_EVENT_DATA *p_evt_data)
472 tNFA_HANDLE app_handle = p_evt_data->comm.hci_handle;
494 void nfa_hci_api_dealloc_gate (tNFA_HCI_EVENT_DATA *p_evt_data)
502 /* p_evt_data may be NULL if we are recursively deleting pipes */
503 if (p_evt_data)
505 gate_id = p_evt_data->gate_dealloc.gate;
506 app_handle = p_evt_data->gate_dealloc.hci_handle;
574 static void nfa_hci_api_get_host_list (tNFA_HCI_EVENT_DATA *p_evt_data)
576 UINT8 app_inx = p_evt_data->get_host_list.hci_handle & NFA_HANDLE_MASK;
578 nfa_hci_cb.app_in_use = p_evt_data->get_host_list.hci_handle;
598 static BOOLEAN nfa_hci_api_create_pipe (tNFA_HCI_EVENT_DATA *p_evt_data)
600 tNFA_HCI_DYN_GATE *p_gate = nfa_hciu_find_gate_by_gid (p_evt_data->create_pipe.source_gate);
604 if ((p_gate == NULL) || (p_gate->gate_owner != p_evt_data->create_pipe.hci_handle))
606 evt_data.created.source_gate = p_evt_data->create_pipe.source_gate;
609 NFA_TRACE_ERROR2 ("nfa_hci_api_create_pipe Cannot create pipe! APP: 0x%02x does not own the gate:0x%x", p_evt_data->create_pipe.hci_handle, p_evt_data->create_pipe.source_gate);
610 nfa_hciu_send_to_app (NFA_HCI_CREATE_PIPE_EVT, &evt_data, p_evt_data->open_pipe.hci_handle);
614 if (nfa_hciu_is_host_reseting (p_evt_data->create_pipe.dest_gate))
616 GKI_enqueue (&nfa_hci_cb.hci_host_reset_api_q, (BT_HDR *) p_evt_data);
620 nfa_hci_cb.local_gate_in_use = p_evt_data->create_pipe.source_gate;
621 nfa_hci_cb.remote_gate_in_use = p_evt_data->create_pipe.dest_gate;
622 nfa_hci_cb.remote_host_in_use = p_evt_data->create_pipe.dest_host;
623 nfa_hci_cb.app_in_use = p_evt_data->create_pipe.hci_handle;
625 nfa_hciu_send_create_pipe_cmd (p_evt_data->create_pipe.source_gate, p_evt_data->create_pipe.dest_host, p_evt_data->create_pipe.dest_gate);
639 static void nfa_hci_api_open_pipe (tNFA_HCI_EVENT_DATA *p_evt_data)
642 tNFA_HCI_DYN_PIPE *p_pipe = nfa_hciu_find_pipe_by_pid (p_evt_data->open_pipe.pipe);
651 &&(p_gate->gate_owner == p_evt_data->open_pipe.hci_handle))
655 nfa_hciu_send_open_pipe_cmd (p_evt_data->open_pipe.pipe);
659 evt_data.opened.pipe = p_evt_data->open_pipe.pipe;
662 nfa_hciu_send_to_app (NFA_HCI_OPEN_PIPE_EVT, &evt_data, p_evt_data->open_pipe.hci_handle);
667 evt_data.opened.pipe = p_evt_data->open_pipe.pipe;
670 nfa_hciu_send_to_app (NFA_HCI_OPEN_PIPE_EVT, &evt_data, p_evt_data->open_pipe.hci_handle);
684 static BOOLEAN nfa_hci_api_get_reg_value (tNFA_HCI_EVENT_DATA *p_evt_data)
686 tNFA_HCI_DYN_PIPE *p_pipe = nfa_hciu_find_pipe_by_pid (p_evt_data->get_registry.pipe);
695 if ((p_gate != NULL) && (nfa_hciu_is_active_host (p_pipe->dest_host)) && (p_gate->gate_owner == p_evt_data->get_registry.hci_handle))
697 nfa_hci_cb.app_in_use = p_evt_data->get_registry.hci_handle;
701 GKI_enqueue (&nfa_hci_cb.hci_host_reset_api_q, (BT_HDR *) p_evt_data);
707 NFA_TRACE_WARNING1 ("nfa_hci_api_get_reg_value pipe:%d not open", p_evt_data->get_registry.pipe);
711 if ((status = nfa_hciu_send_get_param_cmd (p_evt_data->get_registry.pipe, p_evt_data->get_registry.reg_inx)) == NFA_STATUS_OK)
720 nfa_hciu_send_to_app (NFA_HCI_CMD_SENT_EVT, &evt_data, p_evt_data->get_registry.hci_handle);
734 static BOOLEAN nfa_hci_api_set_reg_value (tNFA_HCI_EVENT_DATA *p_evt_data)
736 tNFA_HCI_DYN_PIPE *p_pipe = nfa_hciu_find_pipe_by_pid (p_evt_data->set_registry.pipe);
745 if ((p_gate != NULL) && (nfa_hciu_is_active_host (p_pipe->dest_host)) && (p_gate->gate_owner == p_evt_data->set_registry.hci_handle))
747 nfa_hci_cb.app_in_use = p_evt_data->set_registry.hci_handle;
751 GKI_enqueue (&nfa_hci_cb.hci_host_reset_api_q, (BT_HDR *) p_evt_data);
757 NFA_TRACE_WARNING1 ("nfa_hci_api_set_reg_value pipe:%d not open", p_evt_data->set_registry.pipe);
761 if ((status = nfa_hciu_send_set_param_cmd (p_evt_data->set_registry.pipe, p_evt_data->set_registry.reg_inx, p_evt_data->set_registry.size, p_evt_data->set_registry.data)) == NFA_STATUS_OK)
769 nfa_hciu_send_to_app (NFA_HCI_CMD_SENT_EVT, &evt_data, p_evt_data->set_registry.hci_handle);
783 static void nfa_hci_api_close_pipe (tNFA_HCI_EVENT_DATA *p_evt_data)
786 tNFA_HCI_DYN_PIPE *p_pipe = nfa_hciu_find_pipe_by_pid (p_evt_data->close_pipe.pipe);
795 &&(p_gate->gate_owner == p_evt_data->close_pipe.hci_handle) )
799 nfa_hciu_send_close_pipe_cmd (p_evt_data->close_pipe.pipe);
804 evt_data.closed.pipe = p_evt_data->close_pipe.pipe;
806 nfa_hciu_send_to_app (NFA_HCI_CLOSE_PIPE_EVT, &evt_data, p_evt_data->close_pipe.hci_handle);
814 nfa_hciu_send_to_app (NFA_HCI_CLOSE_PIPE_EVT, &evt_data, p_evt_data->close_pipe.hci_handle);
827 static void nfa_hci_api_delete_pipe (tNFA_HCI_EVENT_DATA *p_evt_data)
830 tNFA_HCI_DYN_PIPE *p_pipe = nfa_hciu_find_pipe_by_pid (p_evt_data->delete_pipe.pipe);
837 &&(p_gate->gate_owner == p_evt_data->delete_pipe.hci_handle)
840 nfa_hciu_send_delete_pipe_cmd (p_evt_data->delete_pipe.pipe);
847 nfa_hciu_send_to_app (NFA_HCI_DELETE_PIPE_EVT, &evt_data, p_evt_data->close_pipe.hci_handle);
860 static BOOLEAN nfa_hci_api_send_cmd (tNFA_HCI_EVENT_DATA *p_evt_data)
867 if ((p_pipe = nfa_hciu_find_pipe_by_pid (p_evt_data->send_cmd.pipe)) != NULL)
869 app_handle = nfa_hciu_get_pipe_owner (p_evt_data->send_cmd.pipe);
872 &&((app_handle == p_evt_data->send_cmd.hci_handle || p_pipe->local_gate == NFA_HCI_CONNECTIVITY_GATE)) )
876 GKI_enqueue (&nfa_hci_cb.hci_host_reset_api_q, (BT_HDR *) p_evt_data);
882 nfa_hci_cb.pipe_in_use = p_evt_data->send_cmd.pipe;
883 if ((status = nfa_hciu_send_msg (p_pipe->pipe_id, NFA_HCI_COMMAND_TYPE, p_evt_data->send_cmd.cmd_code,
884 p_evt_data->send_cmd.cmd_len, p_evt_data->send_cmd.data)) == NFA_STATUS_OK)
900 NFA_TRACE_WARNING1 ("nfa_hci_api_send_cmd pipe:%d not found", p_evt_data->send_cmd.pipe);
906 nfa_hciu_send_to_app (NFA_HCI_CMD_SENT_EVT, &evt_data, p_evt_data->send_cmd.hci_handle);
919 static void nfa_hci_api_send_rsp (tNFA_HCI_EVENT_DATA *p_evt_data)
926 if ((p_pipe = nfa_hciu_find_pipe_by_pid (p_evt_data->send_rsp.pipe)) != NULL)
928 app_handle = nfa_hciu_get_pipe_owner (p_evt_data->send_rsp.pipe);
931 &&((app_handle == p_evt_data->send_rsp.hci_handle || p_pipe->local_gate == NFA_HCI_CONNECTIVITY_GATE)) )
935 if ((status = nfa_hciu_send_msg (p_pipe->pipe_id, NFA_HCI_RESPONSE_TYPE, p_evt_data->send_rsp.response,
936 p_evt_data->send_rsp.size, p_evt_data->send_rsp.data)) == NFA_STATUS_OK)
952 NFA_TRACE_WARNING1 ("nfa_hci_api_send_rsp pipe:%d not found", p_evt_data->send_rsp.pipe);
958 nfa_hciu_send_to_app (NFA_HCI_RSP_SENT_EVT, &evt_data, p_evt_data->send_rsp.hci_handle);
971 static BOOLEAN nfa_hci_api_send_event (tNFA_HCI_EVENT_DATA *p_evt_data)
978 if ((p_pipe = nfa_hciu_find_pipe_by_pid (p_evt_data->send_evt.pipe)) != NULL)
980 app_handle = nfa_hciu_get_pipe_owner (p_evt_data->send_evt.pipe);
983 &&((app_handle == p_evt_data->send_evt.hci_handle || p_pipe->local_gate == NFA_HCI_CONNECTIVITY_GATE)) )
987 GKI_enqueue (&nfa_hci_cb.hci_host_reset_api_q, (BT_HDR *) p_evt_data);
993 status = nfa_hciu_send_msg (p_pipe->pipe_id, NFA_HCI_EVENT_TYPE, p_evt_data->send_evt.evt_code,
994 p_evt_data->send_evt.evt_len, p_evt_data->send_evt.p_evt_buf);
1004 if (p_evt_data->send_evt.rsp_len)
1006 nfa_hci_cb.pipe_in_use = p_evt_data->send_evt.pipe;
1007 nfa_hci_cb.rsp_buf_size = p_evt_data->send_evt.rsp_len;
1008 nfa_hci_cb.p_rsp_buf = p_evt_data->send_evt.p_rsp_buf;
1009 if (p_evt_data->send_evt.rsp_timeout)
1013 nfa_sys_start_timer (&nfa_hci_cb.timer, NFA_HCI_RSP_TIMEOUT_EVT, p_evt_data->send_evt.rsp_timeout);
1024 nfa_hci_cb.pipe_in_use = p_evt_data->send_evt.pipe;
1045 NFA_TRACE_WARNING1 ("nfa_hci_api_send_event pipe:%d not found", p_evt_data->send_evt.pipe);
1051 nfa_hciu_send_to_app (NFA_HCI_EVENT_SENT_EVT, &evt_data, p_evt_data->send_evt.hci_handle);
1064 static void nfa_hci_api_add_static_pipe (tNFA_HCI_EVENT_DATA *p_evt_data)
1071 if ((pg = nfa_hciu_alloc_gate (p_evt_data->add_static_pipe.gate, p_evt_data->add_static_pipe.hci_handle)) != NULL)
1074 pg->gate_owner = p_evt_data->add_static_pipe.hci_handle;
1077 if (nfa_hciu_add_pipe_to_gate (p_evt_data->add_static_pipe.pipe,pg->gate_id, p_evt_data->add_static_pipe.host, p_evt_data->add_static_pipe.gate) != NFA_HCI_ANY_OK)
1082 nfa_hciu_send_to_app (NFA_HCI_ADD_STATIC_PIPE_EVT, &evt_data, p_evt_data->add_static_pipe.hci_handle);
1085 if ((pp = nfa_hciu_find_pipe_by_pid (p_evt_data->add_static_pipe.pipe)) != NULL)
1090 nfa_hciu_send_to_app (NFA_HCI_ADD_STATIC_PIPE_EVT, &evt_data, p_evt_data->add_static_pipe.hci_handle);
1096 nfa_hciu_send_to_app (NFA_HCI_ADD_STATIC_PIPE_EVT, &evt_data, p_evt_data->add_static_pipe.hci_handle);