Lines Matching defs:hci_dev

354 struct hci_dev {
662 int (*open)(struct hci_dev *hdev);
663 int (*close)(struct hci_dev *hdev);
664 int (*flush)(struct hci_dev *hdev);
665 int (*setup)(struct hci_dev *hdev);
666 int (*shutdown)(struct hci_dev *hdev);
667 int (*send)(struct hci_dev *hdev, struct sk_buff *skb);
668 void (*notify)(struct hci_dev *hdev, unsigned int evt);
669 void (*hw_error)(struct hci_dev *hdev, u8 code);
670 int (*post_init)(struct hci_dev *hdev);
671 int (*set_diag)(struct hci_dev *hdev, bool enable);
672 int (*set_bdaddr)(struct hci_dev *hdev, const bdaddr_t *bdaddr);
673 void (*cmd_timeout)(struct hci_dev *hdev);
674 void (*reset)(struct hci_dev *hdev);
675 bool (*wakeup)(struct hci_dev *hdev);
676 int (*set_quality_report)(struct hci_dev *hdev, bool enable);
677 int (*get_data_path_id)(struct hci_dev *hdev, __u8 *data_path);
678 int (*get_codec_config_data)(struct hci_dev *hdev, __u8 type,
776 struct hci_dev *hdev;
867 int l2cap_connect_ind(struct hci_dev *hdev, bdaddr_t *bdaddr);
872 int sco_connect_ind(struct hci_dev *hdev, bdaddr_t *bdaddr, __u8 *flags);
875 static inline int sco_connect_ind(struct hci_dev *hdev, bdaddr_t *bdaddr,
887 int iso_connect_ind(struct hci_dev *hdev, bdaddr_t *bdaddr, __u8 *flags);
890 static inline int iso_connect_ind(struct hci_dev *hdev, bdaddr_t *bdaddr,
905 static inline void discovery_init(struct hci_dev *hdev)
915 static inline void hci_discovery_filter_clear(struct hci_dev *hdev)
927 bool hci_discovery_active(struct hci_dev *hdev);
929 void hci_discovery_set_state(struct hci_dev *hdev, int state);
931 static inline int inquiry_cache_empty(struct hci_dev *hdev)
936 static inline long inquiry_cache_age(struct hci_dev *hdev)
947 struct inquiry_entry *hci_inquiry_cache_lookup(struct hci_dev *hdev,
949 struct inquiry_entry *hci_inquiry_cache_lookup_unknown(struct hci_dev *hdev,
951 struct inquiry_entry *hci_inquiry_cache_lookup_resolve(struct hci_dev *hdev,
954 void hci_inquiry_cache_update_resolve(struct hci_dev *hdev,
956 u32 hci_inquiry_cache_update(struct hci_dev *hdev, struct inquiry_data *data,
958 void hci_inquiry_cache_flush(struct hci_dev *hdev);
996 struct hci_dev *hdev = conn->hdev;
1003 struct hci_dev *hdev = conn->hdev;
1008 static inline void hci_conn_hash_add(struct hci_dev *hdev, struct hci_conn *c)
1034 static inline void hci_conn_hash_del(struct hci_dev *hdev, struct hci_conn *c)
1063 static inline unsigned int hci_conn_num(struct hci_dev *hdev, __u8 type)
1083 static inline unsigned int hci_conn_count(struct hci_dev *hdev)
1090 static inline bool hci_conn_valid(struct hci_dev *hdev, struct hci_conn *conn)
1108 static inline __u8 hci_conn_lookup_type(struct hci_dev *hdev, __u16 handle)
1128 static inline struct hci_conn *hci_conn_hash_lookup_bis(struct hci_dev *hdev,
1151 hci_conn_hash_lookup_per_adv_bis(struct hci_dev *hdev,
1176 static inline struct hci_conn *hci_conn_hash_lookup_handle(struct hci_dev *hdev,
1195 static inline struct hci_conn *hci_conn_hash_lookup_ba(struct hci_dev *hdev,
1215 static inline struct hci_conn *hci_conn_hash_lookup_le(struct hci_dev *hdev,
1239 static inline struct hci_conn *hci_conn_hash_lookup_cis(struct hci_dev *hdev,
1274 static inline struct hci_conn *hci_conn_hash_lookup_cig(struct hci_dev *hdev,
1297 static inline struct hci_conn *hci_conn_hash_lookup_big(struct hci_dev *hdev,
1321 hci_conn_hash_lookup_big_state(struct hci_dev *hdev, __u8 handle, __u16 state)
1345 hci_conn_hash_lookup_pa_sync_big_handle(struct hci_dev *hdev, __u8 big)
1368 hci_conn_hash_lookup_pa_sync_handle(struct hci_dev *hdev, __u16 sync_handle)
1390 static inline struct hci_conn *hci_conn_hash_lookup_state(struct hci_dev *hdev,
1411 static inline void hci_conn_hash_list_state(struct hci_dev *hdev,
1431 static inline void hci_conn_hash_list_flag(struct hci_dev *hdev,
1451 static inline struct hci_conn *hci_lookup_le_connect(struct hci_dev *hdev)
1472 static inline bool hci_is_le_conn_scanning(struct hci_dev *hdev)
1496 int hci_le_create_cis_pending(struct hci_dev *hdev);
1499 struct hci_conn *hci_conn_add(struct hci_dev *hdev, int type, bdaddr_t *dst,
1501 struct hci_conn *hci_conn_add_unset(struct hci_dev *hdev, int type,
1504 void hci_conn_hash_flush(struct hci_dev *hdev);
1509 struct hci_chan *hci_chan_lookup_handle(struct hci_dev *hdev, __u16 handle);
1511 struct hci_conn *hci_connect_le_scan(struct hci_dev *hdev, bdaddr_t *dst,
1515 struct hci_conn *hci_connect_le(struct hci_dev *hdev, bdaddr_t *dst,
1519 struct hci_conn *hci_connect_acl(struct hci_dev *hdev, bdaddr_t *dst,
1522 struct hci_conn *hci_connect_sco(struct hci_dev *hdev, int type, bdaddr_t *dst,
1525 struct hci_conn *hci_bind_cis(struct hci_dev *hdev, bdaddr_t *dst,
1527 struct hci_conn *hci_bind_bis(struct hci_dev *hdev, bdaddr_t *dst,
1530 struct hci_conn *hci_connect_cis(struct hci_dev *hdev, bdaddr_t *dst,
1532 struct hci_conn *hci_connect_bis(struct hci_dev *hdev, bdaddr_t *dst,
1535 struct hci_conn *hci_pa_create_sync(struct hci_dev *hdev, bdaddr_t *dst,
1537 int hci_le_big_create_sync(struct hci_dev *hdev, struct hci_conn *hcon,
1629 static inline void hci_dev_put(struct hci_dev *d)
1637 static inline struct hci_dev *hci_dev_hold(struct hci_dev *d)
1649 #define to_hci_dev(d) container_of(d, struct hci_dev, dev)
1652 static inline void *hci_get_drvdata(struct hci_dev *hdev)
1657 static inline void hci_set_drvdata(struct hci_dev *hdev, void *data)
1662 static inline void *hci_get_priv(struct hci_dev *hdev)
1667 struct hci_dev *hci_dev_get(int index);
1668 struct hci_dev *hci_get_route(bdaddr_t *dst, bdaddr_t *src, u8 src_type);
1670 struct hci_dev *hci_alloc_dev_priv(int sizeof_priv);
1672 static inline struct hci_dev *hci_alloc_dev(void)
1677 void hci_free_dev(struct hci_dev *hdev);
1678 int hci_register_dev(struct hci_dev *hdev);
1679 void hci_unregister_dev(struct hci_dev *hdev);
1680 void hci_release_dev(struct hci_dev *hdev);
1681 int hci_register_suspend_notifier(struct hci_dev *hdev);
1682 int hci_unregister_suspend_notifier(struct hci_dev *hdev);
1683 int hci_suspend_dev(struct hci_dev *hdev);
1684 int hci_resume_dev(struct hci_dev *hdev);
1685 int hci_reset_dev(struct hci_dev *hdev);
1686 int hci_recv_frame(struct hci_dev *hdev, struct sk_buff *skb);
1687 int hci_recv_diag(struct hci_dev *hdev, struct sk_buff *skb);
1688 __printf(2, 3) void hci_set_hw_info(struct hci_dev *hdev, const char *fmt, ...);
1689 __printf(2, 3) void hci_set_fw_info(struct hci_dev *hdev, const char *fmt, ...);
1691 static inline void hci_set_msft_opcode(struct hci_dev *hdev, __u16 opcode)
1698 static inline void hci_set_aosp_capable(struct hci_dev *hdev)
1705 static inline void hci_devcd_setup(struct hci_dev *hdev)
1716 int hci_dev_do_close(struct hci_dev *hdev);
1723 int hci_get_conn_info(struct hci_dev *hdev, void __user *arg);
1724 int hci_get_auth_info(struct hci_dev *hdev, void __user *arg);
1747 struct hci_conn_params *hci_conn_params_lookup(struct hci_dev *hdev,
1749 struct hci_conn_params *hci_conn_params_add(struct hci_dev *hdev,
1751 void hci_conn_params_del(struct hci_dev *hdev, bdaddr_t *addr, u8 addr_type);
1752 void hci_conn_params_clear_disabled(struct hci_dev *hdev);
1762 void hci_uuids_clear(struct hci_dev *hdev);
1764 void hci_link_keys_clear(struct hci_dev *hdev);
1765 struct link_key *hci_find_link_key(struct hci_dev *hdev, bdaddr_t *bdaddr);
1766 struct link_key *hci_add_link_key(struct hci_dev *hdev, struct hci_conn *conn,
1769 struct smp_ltk *hci_add_ltk(struct hci_dev *hdev, bdaddr_t *bdaddr,
1772 struct smp_ltk *hci_find_ltk(struct hci_dev *hdev, bdaddr_t *bdaddr,
1774 int hci_remove_ltk(struct hci_dev *hdev, bdaddr_t *bdaddr, u8 bdaddr_type);
1775 void hci_smp_ltks_clear(struct hci_dev *hdev);
1776 int hci_remove_link_key(struct hci_dev *hdev, bdaddr_t *bdaddr);
1778 struct smp_irk *hci_find_irk_by_rpa(struct hci_dev *hdev, bdaddr_t *rpa);
1779 struct smp_irk *hci_find_irk_by_addr(struct hci_dev *hdev, bdaddr_t *bdaddr,
1781 struct smp_irk *hci_add_irk(struct hci_dev *hdev, bdaddr_t *bdaddr,
1783 void hci_remove_irk(struct hci_dev *hdev, bdaddr_t *bdaddr, u8 addr_type);
1784 bool hci_is_blocked_key(struct hci_dev *hdev, u8 type, u8 val[16]);
1785 void hci_blocked_keys_clear(struct hci_dev *hdev);
1786 void hci_smp_irks_clear(struct hci_dev *hdev);
1788 bool hci_bdaddr_is_paired(struct hci_dev *hdev, bdaddr_t *bdaddr, u8 type);
1790 void hci_remote_oob_data_clear(struct hci_dev *hdev);
1791 struct oob_data *hci_find_remote_oob_data(struct hci_dev *hdev,
1793 int hci_add_remote_oob_data(struct hci_dev *hdev, bdaddr_t *bdaddr,
1796 int hci_remove_remote_oob_data(struct hci_dev *hdev, bdaddr_t *bdaddr,
1799 void hci_adv_instances_clear(struct hci_dev *hdev);
1800 struct adv_info *hci_find_adv_instance(struct hci_dev *hdev, u8 instance);
1801 struct adv_info *hci_get_next_instance(struct hci_dev *hdev, u8 instance);
1802 struct adv_info *hci_add_adv_instance(struct hci_dev *hdev, u8 instance,
1808 struct adv_info *hci_add_per_instance(struct hci_dev *hdev, u8 instance,
1811 int hci_set_adv_instance_data(struct hci_dev *hdev, u8 instance,
1814 int hci_remove_adv_instance(struct hci_dev *hdev, u8 instance);
1815 void hci_adv_instances_set_rpa_expired(struct hci_dev *hdev, bool rpa_expired);
1816 u32 hci_adv_instance_flags(struct hci_dev *hdev, u8 instance);
1817 bool hci_adv_instance_is_scannable(struct hci_dev *hdev, u8 instance);
1819 void hci_adv_monitors_clear(struct hci_dev *hdev);
1820 void hci_free_adv_monitor(struct hci_dev *hdev, struct adv_monitor *monitor);
1821 int hci_add_adv_monitor(struct hci_dev *hdev, struct adv_monitor *monitor);
1822 int hci_remove_single_adv_monitor(struct hci_dev *hdev, u16 handle);
1823 int hci_remove_all_adv_monitor(struct hci_dev *hdev);
1824 bool hci_is_adv_monitoring(struct hci_dev *hdev);
1825 int hci_get_adv_monitor_offload_ext(struct hci_dev *hdev);
1827 void hci_event_packet(struct hci_dev *hdev, struct sk_buff *skb);
1829 void hci_init_sysfs(struct hci_dev *hdev);
1964 static inline int hci_proto_connect_ind(struct hci_dev *hdev, bdaddr_t *bdaddr,
2145 static inline struct smp_irk *hci_get_irk(struct hci_dev *hdev,
2178 int __hci_cmd_send(struct hci_dev *hdev, u16 opcode, u32 plen,
2181 int hci_send_cmd(struct hci_dev *hdev, __u16 opcode, __u32 plen,
2187 void *hci_sent_cmd_data(struct hci_dev *hdev, __u16 opcode);
2188 void *hci_recv_event_data(struct hci_dev *hdev, __u8 event);
2193 void hci_send_to_sock(struct hci_dev *hdev, struct sk_buff *skb);
2196 void hci_send_to_monitor(struct hci_dev *hdev, struct sk_buff *skb);
2197 void hci_send_monitor_ctrl_event(struct hci_dev *hdev, u16 event,
2201 void hci_sock_dev_event(struct hci_dev *hdev, int event);
2210 int (*func) (struct sock *sk, struct hci_dev *hdev, void *data,
2221 void (*hdev_init) (struct sock *sk, struct hci_dev *hdev);
2256 int mgmt_new_settings(struct hci_dev *hdev);
2257 void mgmt_index_added(struct hci_dev *hdev);
2258 void mgmt_index_removed(struct hci_dev *hdev);
2259 void mgmt_set_powered_failed(struct hci_dev *hdev, int err);
2260 void mgmt_power_on(struct hci_dev *hdev, int err);
2261 void __mgmt_power_off(struct hci_dev *hdev);
2262 void mgmt_new_link_key(struct hci_dev *hdev, struct link_key *key,
2264 void mgmt_device_connected(struct hci_dev *hdev, struct hci_conn *conn,
2266 void mgmt_device_disconnected(struct hci_dev *hdev, bdaddr_t *bdaddr,
2269 void mgmt_disconnect_failed(struct hci_dev *hdev, bdaddr_t *bdaddr,
2271 void mgmt_connect_failed(struct hci_dev *hdev, bdaddr_t *bdaddr, u8 link_type,
2273 void mgmt_pin_code_request(struct hci_dev *hdev, bdaddr_t *bdaddr, u8 secure);
2274 void mgmt_pin_code_reply_complete(struct hci_dev *hdev, bdaddr_t *bdaddr,
2276 void mgmt_pin_code_neg_reply_complete(struct hci_dev *hdev, bdaddr_t *bdaddr,
2278 int mgmt_user_confirm_request(struct hci_dev *hdev, bdaddr_t *bdaddr,
2281 int mgmt_user_confirm_reply_complete(struct hci_dev *hdev, bdaddr_t *bdaddr,
2283 int mgmt_user_confirm_neg_reply_complete(struct hci_dev *hdev, bdaddr_t *bdaddr,
2285 int mgmt_user_passkey_request(struct hci_dev *hdev, bdaddr_t *bdaddr,
2287 int mgmt_user_passkey_reply_complete(struct hci_dev *hdev, bdaddr_t *bdaddr,
2289 int mgmt_user_passkey_neg_reply_complete(struct hci_dev *hdev, bdaddr_t *bdaddr,
2291 int mgmt_user_passkey_notify(struct hci_dev *hdev, bdaddr_t *bdaddr,
2295 void mgmt_auth_enable_complete(struct hci_dev *hdev, u8 status);
2296 void mgmt_set_class_of_dev_complete(struct hci_dev *hdev, u8 *dev_class,
2298 void mgmt_set_local_name_complete(struct hci_dev *hdev, u8 *name, u8 status);
2299 void mgmt_start_discovery_complete(struct hci_dev *hdev, u8 status);
2300 void mgmt_stop_discovery_complete(struct hci_dev *hdev, u8 status);
2301 void mgmt_device_found(struct hci_dev *hdev, bdaddr_t *bdaddr, u8 link_type,
2305 void mgmt_remote_name(struct hci_dev *hdev, bdaddr_t *bdaddr, u8 link_type,
2307 void mgmt_discovering(struct hci_dev *hdev, u8 discovering);
2308 void mgmt_suspending(struct hci_dev *hdev, u8 state);
2309 void mgmt_resuming(struct hci_dev *hdev, u8 reason, bdaddr_t *bdaddr,
2311 bool mgmt_powering_down(struct hci_dev *hdev);
2312 void mgmt_new_ltk(struct hci_dev *hdev, struct smp_ltk *key, bool persistent);
2313 void mgmt_new_irk(struct hci_dev *hdev, struct smp_irk *irk, bool persistent);
2314 void mgmt_new_csrk(struct hci_dev *hdev, struct smp_csrk *csrk,
2316 void mgmt_new_conn_param(struct hci_dev *hdev, bdaddr_t *bdaddr,
2320 bool mgmt_get_connectable(struct hci_dev *hdev);
2321 u8 mgmt_get_adv_discov_flags(struct hci_dev *hdev);
2322 void mgmt_advertising_added(struct sock *sk, struct hci_dev *hdev,
2324 void mgmt_advertising_removed(struct sock *sk, struct hci_dev *hdev,
2326 void mgmt_adv_monitor_removed(struct hci_dev *hdev, u16 handle);
2327 int mgmt_phy_configuration_changed(struct hci_dev *hdev, struct sock *skip);
2328 void mgmt_adv_monitor_device_lost(struct hci_dev *hdev, u16 handle,
2337 void hci_copy_identity_address(struct hci_dev *hdev, bdaddr_t *bdaddr,