Home
last modified time | relevance | path

Searched refs:hdev (Results 1 – 25 of 36) sorted by relevance

12

/net/bluetooth/
Dhci_debugfs.c36 struct hci_dev *hdev = file->private_data; \
39 buf[0] = test_bit(__quirk, &hdev->quirks) ? 'Y' : 'N'; \
49 struct hci_dev *hdev = file->private_data; \
53 if (test_bit(HCI_UP, &hdev->flags)) \
60 if (enable == test_bit(__quirk, &hdev->quirks)) \
63 change_bit(__quirk, &hdev->quirks); \
78 struct hci_dev *hdev = f->private; \
80 hci_dev_lock(hdev); \
81 seq_printf(f, "%s\n", hdev->__field ? : ""); \
82 hci_dev_unlock(hdev); \
[all …]
Dhci_core.c66 struct hci_dev *hdev = file->private_data; in dut_mode_read() local
69 buf[0] = hci_dev_test_flag(hdev, HCI_DUT_MODE) ? 'Y' : 'N'; in dut_mode_read()
78 struct hci_dev *hdev = file->private_data; in dut_mode_write() local
83 if (!test_bit(HCI_UP, &hdev->flags)) in dut_mode_write()
90 if (enable == hci_dev_test_flag(hdev, HCI_DUT_MODE)) in dut_mode_write()
93 hci_req_sync_lock(hdev); in dut_mode_write()
95 skb = __hci_cmd_sync(hdev, HCI_OP_ENABLE_DUT_MODE, 0, NULL, in dut_mode_write()
98 skb = __hci_cmd_sync(hdev, HCI_OP_RESET, 0, NULL, in dut_mode_write()
100 hci_req_sync_unlock(hdev); in dut_mode_write()
107 hci_dev_change_flag(hdev, HCI_DUT_MODE); in dut_mode_write()
[all …]
Dhci_event.c46 static void hci_cc_inquiry_cancel(struct hci_dev *hdev, struct sk_buff *skb, in hci_cc_inquiry_cancel() argument
51 BT_DBG("%s status 0x%2.2x", hdev->name, status); in hci_cc_inquiry_cancel()
60 if (status == 0x0c && !test_bit(HCI_INQUIRY, &hdev->flags)) { in hci_cc_inquiry_cancel()
61 bt_dev_warn(hdev, "Ignoring error of Inquiry Cancel command"); in hci_cc_inquiry_cancel()
70 clear_bit(HCI_INQUIRY, &hdev->flags); in hci_cc_inquiry_cancel()
72 wake_up_bit(&hdev->flags, HCI_INQUIRY); in hci_cc_inquiry_cancel()
74 hci_dev_lock(hdev); in hci_cc_inquiry_cancel()
78 if (!hci_dev_test_flag(hdev, HCI_LE_SCAN) || in hci_cc_inquiry_cancel()
79 hdev->le_scan_type != LE_SCAN_ACTIVE) in hci_cc_inquiry_cancel()
80 hci_discovery_set_state(hdev, DISCOVERY_STOPPED); in hci_cc_inquiry_cancel()
[all …]
Dhci_request.c37 void hci_req_init(struct hci_request *req, struct hci_dev *hdev) in hci_req_init() argument
40 req->hdev = hdev; in hci_req_init()
49 bool hci_req_status_pend(struct hci_dev *hdev) in hci_req_status_pend() argument
51 return hdev->req_status == HCI_REQ_PEND; in hci_req_status_pend()
57 struct hci_dev *hdev = req->hdev; in req_run() local
83 spin_lock_irqsave(&hdev->cmd_q.lock, flags); in req_run()
84 skb_queue_splice_tail(&req->cmd_q, &hdev->cmd_q); in req_run()
85 spin_unlock_irqrestore(&hdev->cmd_q.lock, flags); in req_run()
87 queue_work(hdev->workqueue, &hdev->cmd_work); in req_run()
102 static void hci_req_sync_complete(struct hci_dev *hdev, u8 result, u16 opcode, in hci_req_sync_complete() argument
[all …]
Dmgmt.c253 static int mgmt_index_event(u16 event, struct hci_dev *hdev, void *data, in mgmt_index_event() argument
256 return mgmt_send_event(event, hdev, HCI_CHANNEL_CONTROL, data, len, in mgmt_index_event()
260 static int mgmt_limited_event(u16 event, struct hci_dev *hdev, void *data, in mgmt_limited_event() argument
263 return mgmt_send_event(event, hdev, HCI_CHANNEL_CONTROL, data, len, in mgmt_limited_event()
267 static int mgmt_event(u16 event, struct hci_dev *hdev, void *data, u16 len, in mgmt_event() argument
270 return mgmt_send_event(event, hdev, HCI_CHANNEL_CONTROL, data, len, in mgmt_event()
290 static int read_version(struct sock *sk, struct hci_dev *hdev, void *data, in read_version() argument
303 static int read_commands(struct sock *sk, struct hci_dev *hdev, void *data, in read_commands() argument
355 static int read_index_list(struct sock *sk, struct hci_dev *hdev, void *data, in read_index_list() argument
415 static int read_unconf_index_list(struct sock *sk, struct hci_dev *hdev, in read_unconf_index_list() argument
[all …]
Dhci_conn.c66 struct hci_dev *hdev = conn->hdev; in hci_connect_le_scan_cleanup() local
75 irk = hci_get_irk(hdev, bdaddr, bdaddr_type); in hci_connect_le_scan_cleanup()
81 params = hci_pend_le_action_lookup(&hdev->pend_le_conns, bdaddr, in hci_connect_le_scan_cleanup()
97 hci_conn_params_del(hdev, bdaddr, bdaddr_type); in hci_connect_le_scan_cleanup()
102 list_add(&params->action, &hdev->pend_le_conns); in hci_connect_le_scan_cleanup()
105 list_add(&params->action, &hdev->pend_le_reports); in hci_connect_le_scan_cleanup()
111 hci_update_background_scan(hdev); in hci_connect_le_scan_cleanup()
116 struct hci_dev *hdev = conn->hdev; in hci_conn_cleanup() local
119 hci_conn_params_del(conn->hdev, &conn->dst, conn->dst_type); in hci_conn_cleanup()
123 hci_conn_hash_del(hdev, conn); in hci_conn_cleanup()
[all …]
Damp.c105 struct hci_conn *phylink_add(struct hci_dev *hdev, struct amp_mgr *mgr, in phylink_add() argument
112 hcon = hci_conn_add(hdev, AMP_LINK, dst, role); in phylink_add()
169 struct hci_dev *hdev = conn->hdev; in phylink_gen_key() local
182 bt_dev_err(hdev, "legacy key type %d", conn->key_type); in phylink_gen_key()
189 key = hci_find_link_key(hdev, &conn->dst); in phylink_gen_key()
202 bt_dev_err(hdev, "could not derive Generic AMP Key: err %d", err); in phylink_gen_key()
216 static void read_local_amp_assoc_complete(struct hci_dev *hdev, u8 status, in read_local_amp_assoc_complete() argument
220 struct amp_assoc *assoc = &hdev->loc_assoc; in read_local_amp_assoc_complete()
223 BT_DBG("%s status 0x%2.2x", hdev->name, rp->status); in read_local_amp_assoc_complete()
238 amp_read_loc_assoc_frag(hdev, rp->phy_handle); in read_local_amp_assoc_complete()
[all …]
Dhci_sock.c53 struct hci_dev *hdev; member
64 struct hci_dev *hdev = hci_pi(sk)->hdev; in hci_hdev_from_sock() local
66 if (!hdev) in hci_hdev_from_sock()
68 if (hci_dev_test_flag(hdev, HCI_UNREGISTER)) in hci_hdev_from_sock()
70 return hdev; in hci_hdev_from_sock()
202 void hci_send_to_sock(struct hci_dev *hdev, struct sk_buff *skb) in hci_send_to_sock() argument
207 BT_DBG("hdev %p len %d", hdev, skb->len); in hci_send_to_sock()
214 if (sk->sk_state != BT_BOUND || hci_pi(sk)->hdev != hdev) in hci_send_to_sock()
308 void hci_send_to_monitor(struct hci_dev *hdev, struct sk_buff *skb) in hci_send_to_monitor() argument
317 BT_DBG("hdev %p len %d", hdev, skb->len); in hci_send_to_monitor()
[all …]
Dhci_request.h25 #define hci_req_sync_lock(hdev) mutex_lock(&hdev->req_lock) argument
26 #define hci_req_sync_unlock(hdev) mutex_unlock(&hdev->req_lock) argument
29 struct hci_dev *hdev; member
38 void hci_req_init(struct hci_request *req, struct hci_dev *hdev);
40 bool hci_req_status_pend(struct hci_dev *hdev);
47 void hci_req_cmd_complete(struct hci_dev *hdev, u16 opcode, u8 status,
51 int hci_req_sync(struct hci_dev *hdev, int (*req)(struct hci_request *req,
54 int __hci_req_sync(struct hci_dev *hdev, int (*func)(struct hci_request *req,
57 void hci_req_sync_cancel(struct hci_dev *hdev, int err);
59 struct sk_buff *hci_prepare_cmd(struct hci_dev *hdev, u16 opcode, u32 plen,
[all …]
Dhci_sysfs.c34 struct hci_dev *hdev = conn->hdev; in hci_conn_init_sysfs() local
36 bt_dev_dbg(hdev, "conn %p", conn); in hci_conn_init_sysfs()
40 conn->dev.parent = &hdev->dev; in hci_conn_init_sysfs()
47 struct hci_dev *hdev = conn->hdev; in hci_conn_add_sysfs() local
49 bt_dev_dbg(hdev, "conn %p", conn); in hci_conn_add_sysfs()
54 dev_set_name(&conn->dev, "%s:%d", hdev->name, conn->handle); in hci_conn_add_sysfs()
57 bt_dev_err(hdev, "failed to register connection device"); in hci_conn_add_sysfs()
62 struct hci_dev *hdev = conn->hdev; in hci_conn_del_sysfs() local
64 bt_dev_dbg(hdev, "conn %p", conn); in hci_conn_del_sysfs()
89 struct hci_dev *hdev = to_hci_dev(dev); in bt_host_release() local
[all …]
Dleds.c15 struct hci_dev *hdev; member
21 void hci_leds_update_powered(struct hci_dev *hdev, bool enabled) in hci_leds_update_powered() argument
23 if (hdev->power_led) in hci_leds_update_powered()
24 led_trigger_event(hdev->power_led, in hci_leds_update_powered()
49 powered = test_bit(HCI_UP, &htrig->hdev->flags); in power_activate()
56 static struct led_trigger *led_allocate_basic(struct hci_dev *hdev, in led_allocate_basic() argument
62 htrig = devm_kzalloc(&hdev->dev, sizeof(*htrig), GFP_KERNEL); in led_allocate_basic()
66 htrig->hdev = hdev; in led_allocate_basic()
68 htrig->led_trigger.name = devm_kasprintf(&hdev->dev, GFP_KERNEL, in led_allocate_basic()
69 "%s-%s", hdev->name, in led_allocate_basic()
[all …]
Da2mp.c94 struct hci_dev *hdev; in __a2mp_add_cl() local
101 list_for_each_entry(hdev, &hci_dev_list, list) { in __a2mp_add_cl()
102 if (hdev->dev_type == HCI_AMP) { in __a2mp_add_cl()
103 cl[i].id = hdev->id; in __a2mp_add_cl()
104 cl[i].type = hdev->amp_type; in __a2mp_add_cl()
105 if (test_bit(HCI_UP, &hdev->flags)) in __a2mp_add_cl()
106 cl[i].status = hdev->amp_status; in __a2mp_add_cl()
138 struct hci_dev *hdev; in a2mp_discover_req() local
165 list_for_each_entry(hdev, &hci_dev_list, list) { in a2mp_discover_req()
166 if (hdev->dev_type == HCI_AMP) in a2mp_discover_req()
[all …]
Dsmp.c40 #define SMP_DEV(hdev) \ argument
41 ((struct smp_dev *)((struct l2cap_chan *)((hdev)->smp_data))->data)
501 bool smp_irk_matches(struct hci_dev *hdev, const u8 irk[16], in smp_irk_matches() argument
504 struct l2cap_chan *chan = hdev->smp_data; in smp_irk_matches()
523 int smp_generate_rpa(struct hci_dev *hdev, const u8 irk[16], bdaddr_t *rpa) in smp_generate_rpa() argument
525 struct l2cap_chan *chan = hdev->smp_data; in smp_generate_rpa()
548 int smp_generate_oob(struct hci_dev *hdev, u8 hash[16], u8 rand[16]) in smp_generate_oob() argument
550 struct l2cap_chan *chan = hdev->smp_data; in smp_generate_oob()
559 if (hci_dev_test_flag(hdev, HCI_USE_DEBUG_KEYS)) { in smp_generate_oob()
664 struct hci_dev *hdev = hcon->hdev; in build_pairing_cmd() local
[all …]
Damp.h26 struct hci_conn *phylink_add(struct hci_dev *hdev, struct amp_mgr *mgr,
31 void amp_read_loc_info(struct hci_dev *hdev, struct amp_mgr *mgr);
32 void amp_read_loc_assoc_frag(struct hci_dev *hdev, u8 phy_handle);
33 void amp_read_loc_assoc(struct hci_dev *hdev, struct amp_mgr *mgr);
34 void amp_read_loc_assoc_final_data(struct hci_dev *hdev,
36 void amp_create_phylink(struct hci_dev *hdev, struct amp_mgr *mgr,
38 void amp_accept_phylink(struct hci_dev *hdev, struct amp_mgr *mgr,
54 void amp_write_remote_assoc(struct hci_dev *hdev, u8 handle);
55 void amp_write_rem_assoc_continue(struct hci_dev *hdev, u8 handle);
Dhci_debugfs.h25 void hci_debugfs_create_common(struct hci_dev *hdev);
26 void hci_debugfs_create_bredr(struct hci_dev *hdev);
27 void hci_debugfs_create_le(struct hci_dev *hdev);
32 static inline void hci_debugfs_create_common(struct hci_dev *hdev) in hci_debugfs_create_common() argument
36 static inline void hci_debugfs_create_bredr(struct hci_dev *hdev) in hci_debugfs_create_bredr() argument
40 static inline void hci_debugfs_create_le(struct hci_dev *hdev) in hci_debugfs_create_le() argument
Dmgmt_util.c59 int mgmt_send_event(u16 event, struct hci_dev *hdev, unsigned short channel, in mgmt_send_event() argument
71 if (hdev) in mgmt_send_event()
72 hdr->index = cpu_to_le16(hdev->id); in mgmt_send_event()
86 hci_send_monitor_ctrl_event(hdev, event, data, data_len, in mgmt_send_event()
185 struct hci_dev *hdev) in mgmt_pending_find() argument
189 list_for_each_entry(cmd, &hdev->mgmt_pending, list) { in mgmt_pending_find()
201 struct hci_dev *hdev, in mgmt_pending_find_data() argument
206 list_for_each_entry(cmd, &hdev->mgmt_pending, list) { in mgmt_pending_find_data()
216 void mgmt_pending_foreach(u16 opcode, struct hci_dev *hdev, in mgmt_pending_foreach() argument
222 list_for_each_entry_safe(cmd, tmp, &hdev->mgmt_pending, list) { in mgmt_pending_foreach()
[all …]
Dmgmt_util.h34 int mgmt_send_event(u16 event, struct hci_dev *hdev, unsigned short channel,
41 struct hci_dev *hdev);
44 struct hci_dev *hdev,
46 void mgmt_pending_foreach(u16 opcode, struct hci_dev *hdev,
50 struct hci_dev *hdev,
Dleds.h8 void hci_leds_update_powered(struct hci_dev *hdev, bool enabled);
9 void hci_leds_init(struct hci_dev *hdev);
16 static inline void hci_leds_update_powered(struct hci_dev *hdev, in hci_leds_update_powered() argument
18 static inline void hci_leds_init(struct hci_dev *hdev) {} in hci_leds_init() argument
Dsmp.h184 int smp_cancel_and_remove_pairing(struct hci_dev *hdev, bdaddr_t *bdaddr,
191 bool smp_irk_matches(struct hci_dev *hdev, const u8 irk[16],
193 int smp_generate_rpa(struct hci_dev *hdev, const u8 irk[16], bdaddr_t *rpa);
194 int smp_generate_oob(struct hci_dev *hdev, u8 hash[16], u8 rand[16]);
196 int smp_register(struct hci_dev *hdev);
197 void smp_unregister(struct hci_dev *hdev);
Dsco.c125 struct hci_dev *hdev = hcon->hdev; in sco_conn_add() local
141 if (hdev->sco_mtu > 0) in sco_conn_add()
142 conn->mtu = hdev->sco_mtu; in sco_conn_add()
236 static int sco_connect(struct hci_dev *hdev, struct sock *sk) in sco_connect() argument
244 if (lmp_esco_capable(hdev) && !disable_esco) in sco_connect()
250 (!lmp_transp_capable(hdev) || !lmp_esco_capable(hdev))) in sco_connect()
253 hcon = hci_connect_sco(hdev, type, &sco_pi(sk)->dst, in sco_connect()
550 struct hci_dev *hdev; in sco_sock_connect() local
570 hdev = hci_get_route(&sa->sco_bdaddr, &sco_pi(sk)->src, BDADDR_BREDR); in sco_sock_connect()
571 if (!hdev) { in sco_sock_connect()
[all …]
/net/nfc/hci/
Dcore.c37 void nfc_hci_reset_pipes(struct nfc_hci_dev *hdev) in nfc_hci_reset_pipes() argument
42 hdev->pipes[i].gate = NFC_HCI_INVALID_GATE; in nfc_hci_reset_pipes()
43 hdev->pipes[i].dest_host = NFC_HCI_INVALID_HOST; in nfc_hci_reset_pipes()
45 memset(hdev->gate2pipe, NFC_HCI_INVALID_PIPE, sizeof(hdev->gate2pipe)); in nfc_hci_reset_pipes()
49 void nfc_hci_reset_pipes_per_host(struct nfc_hci_dev *hdev, u8 host) in nfc_hci_reset_pipes_per_host() argument
54 if (hdev->pipes[i].dest_host != host) in nfc_hci_reset_pipes_per_host()
57 hdev->pipes[i].gate = NFC_HCI_INVALID_GATE; in nfc_hci_reset_pipes_per_host()
58 hdev->pipes[i].dest_host = NFC_HCI_INVALID_HOST; in nfc_hci_reset_pipes_per_host()
65 struct nfc_hci_dev *hdev = container_of(work, struct nfc_hci_dev, in nfc_hci_msg_tx_work() local
71 mutex_lock(&hdev->msg_tx_mutex); in nfc_hci_msg_tx_work()
[all …]
Dcommand.c19 static int nfc_hci_execute_cmd_async(struct nfc_hci_dev *hdev, u8 pipe, u8 cmd, in nfc_hci_execute_cmd_async() argument
29 return nfc_hci_hcp_message_tx(hdev, pipe, NFC_HCI_HCP_COMMAND, cmd, in nfc_hci_execute_cmd_async()
55 static int nfc_hci_execute_cmd(struct nfc_hci_dev *hdev, u8 pipe, u8 cmd, in nfc_hci_execute_cmd() argument
71 hcp_ew.exec_result = nfc_hci_hcp_message_tx(hdev, pipe, in nfc_hci_execute_cmd()
91 int nfc_hci_send_event(struct nfc_hci_dev *hdev, u8 gate, u8 event, in nfc_hci_send_event() argument
98 pipe = hdev->gate2pipe[gate]; in nfc_hci_send_event()
102 return nfc_hci_hcp_message_tx(hdev, pipe, NFC_HCI_HCP_EVENT, event, in nfc_hci_send_event()
112 int nfc_hci_send_cmd(struct nfc_hci_dev *hdev, u8 gate, u8 cmd, in nfc_hci_send_cmd() argument
119 pipe = hdev->gate2pipe[gate]; in nfc_hci_send_cmd()
123 return nfc_hci_execute_cmd(hdev, pipe, cmd, param, param_len, skb); in nfc_hci_send_cmd()
[all …]
Dhcp.c21 int nfc_hci_hcp_message_tx(struct nfc_hci_dev *hdev, u8 pipe, in nfc_hci_hcp_message_tx() argument
27 struct nfc_dev *ndev = hdev->ndev; in nfc_hci_hcp_message_tx()
51 hdev->max_data_link_payload) in nfc_hci_hcp_message_tx()
54 data_link_len = hdev->max_data_link_payload - in nfc_hci_hcp_message_tx()
93 mutex_lock(&hdev->msg_tx_mutex); in nfc_hci_hcp_message_tx()
95 if (hdev->shutting_down) { in nfc_hci_hcp_message_tx()
97 mutex_unlock(&hdev->msg_tx_mutex); in nfc_hci_hcp_message_tx()
101 list_add_tail(&cmd->msg_l, &hdev->msg_tx_queue); in nfc_hci_hcp_message_tx()
102 mutex_unlock(&hdev->msg_tx_mutex); in nfc_hci_hcp_message_tx()
104 schedule_work(&hdev->msg_tx_work); in nfc_hci_hcp_message_tx()
[all …]
Dllc_nop.c13 struct nfc_hci_dev *hdev; member
21 static void *llc_nop_init(struct nfc_hci_dev *hdev, xmit_to_drv_t xmit_to_drv, in llc_nop_init() argument
35 llc_nop->hdev = hdev; in llc_nop_init()
64 llc_nop->rcv_to_hci(llc_nop->hdev, skb); in llc_nop_rcv_from_drv()
71 return llc_nop->xmit_to_drv(llc_nop->hdev, skb); in llc_nop_xmit_from_hci()
/net/nfc/nci/
Dhci.c110 static void nci_hci_reset_pipes(struct nci_hci_dev *hdev) in nci_hci_reset_pipes() argument
115 hdev->pipes[i].gate = NCI_HCI_INVALID_GATE; in nci_hci_reset_pipes()
116 hdev->pipes[i].host = NCI_HCI_INVALID_HOST; in nci_hci_reset_pipes()
118 memset(hdev->gate2pipe, NCI_HCI_INVALID_PIPE, sizeof(hdev->gate2pipe)); in nci_hci_reset_pipes()
411 struct nci_hci_dev *hdev = in nci_hci_msg_rx_work() local
417 while ((skb = skb_dequeue(&hdev->msg_rx_queue)) != NULL) { in nci_hci_msg_rx_work()
425 nci_hci_hcp_message_rx(hdev->ndev, pipe, in nci_hci_msg_rx_work()
785 struct nci_hci_dev *hdev; in nci_hci_allocate() local
787 hdev = kzalloc(sizeof(*hdev), GFP_KERNEL); in nci_hci_allocate()
788 if (!hdev) in nci_hci_allocate()
[all …]

12