Lines Matching defs:hdev
19 static int nfc_hci_execute_cmd_async(struct nfc_hci_dev *hdev, u8 pipe, u8 cmd,
29 return nfc_hci_hcp_message_tx(hdev, pipe, NFC_HCI_HCP_COMMAND, cmd,
55 static int nfc_hci_execute_cmd(struct nfc_hci_dev *hdev, u8 pipe, u8 cmd,
71 hcp_ew.exec_result = nfc_hci_hcp_message_tx(hdev, pipe,
91 int nfc_hci_send_event(struct nfc_hci_dev *hdev, u8 gate, u8 event,
98 pipe = hdev->gate2pipe[gate];
102 return nfc_hci_hcp_message_tx(hdev, pipe, NFC_HCI_HCP_EVENT, event,
112 int nfc_hci_send_cmd(struct nfc_hci_dev *hdev, u8 gate, u8 cmd,
119 pipe = hdev->gate2pipe[gate];
123 return nfc_hci_execute_cmd(hdev, pipe, cmd, param, param_len, skb);
127 int nfc_hci_send_cmd_async(struct nfc_hci_dev *hdev, u8 gate, u8 cmd,
135 pipe = hdev->gate2pipe[gate];
139 return nfc_hci_execute_cmd_async(hdev, pipe, cmd, param, param_len,
144 int nfc_hci_set_param(struct nfc_hci_dev *hdev, u8 gate, u8 idx,
167 r = nfc_hci_send_cmd(hdev, gate, NFC_HCI_ANY_SET_PARAMETER,
176 int nfc_hci_get_param(struct nfc_hci_dev *hdev, u8 gate, u8 idx,
181 return nfc_hci_send_cmd(hdev, gate, NFC_HCI_ANY_GET_PARAMETER,
186 static int nfc_hci_open_pipe(struct nfc_hci_dev *hdev, u8 pipe)
193 r = nfc_hci_execute_cmd(hdev, pipe, NFC_HCI_ANY_OPEN_PIPE,
206 static int nfc_hci_close_pipe(struct nfc_hci_dev *hdev, u8 pipe)
210 return nfc_hci_execute_cmd(hdev, pipe, NFC_HCI_ANY_CLOSE_PIPE,
214 static u8 nfc_hci_create_pipe(struct nfc_hci_dev *hdev, u8 dest_host,
228 *result = nfc_hci_execute_cmd(hdev, NFC_HCI_ADMIN_PIPE,
243 static int nfc_hci_delete_pipe(struct nfc_hci_dev *hdev, u8 pipe)
247 return nfc_hci_execute_cmd(hdev, NFC_HCI_ADMIN_PIPE,
251 static int nfc_hci_clear_all_pipes(struct nfc_hci_dev *hdev)
261 if (test_bit(NFC_HCI_QUIRK_SHORT_CLEAR, &hdev->quirks))
264 return nfc_hci_execute_cmd(hdev, NFC_HCI_ADMIN_PIPE,
269 int nfc_hci_disconnect_gate(struct nfc_hci_dev *hdev, u8 gate)
272 u8 pipe = hdev->gate2pipe[gate];
279 r = nfc_hci_close_pipe(hdev, pipe);
284 r = nfc_hci_delete_pipe(hdev, pipe);
289 hdev->gate2pipe[gate] = NFC_HCI_INVALID_PIPE;
295 int nfc_hci_disconnect_all_gates(struct nfc_hci_dev *hdev)
301 r = nfc_hci_clear_all_pipes(hdev);
305 nfc_hci_reset_pipes(hdev);
311 int nfc_hci_connect_gate(struct nfc_hci_dev *hdev, u8 dest_host, u8 dest_gate,
322 if (hdev->gate2pipe[dest_gate] != NFC_HCI_INVALID_PIPE)
336 pipe = nfc_hci_create_pipe(hdev, dest_host, dest_gate, &r);
344 r = nfc_hci_open_pipe(hdev, pipe);
347 if (nfc_hci_delete_pipe(hdev, pipe) < 0) {
354 hdev->pipes[pipe].gate = dest_gate;
355 hdev->pipes[pipe].dest_host = dest_host;
356 hdev->gate2pipe[dest_gate] = pipe;