Lines Matching defs:hci_dev
351 struct hci_dev { struct
352 struct list_head list;
353 struct srcu_struct srcu;
354 struct mutex lock;
356 struct ida unset_handle_ida;
358 const char *name;
359 unsigned long flags;
360 __u16 id;
361 __u8 bus;
362 bdaddr_t bdaddr;
363 bdaddr_t setup_addr;
364 bdaddr_t public_addr;
365 bdaddr_t random_addr;
366 bdaddr_t static_addr;
367 __u8 adv_addr_type;
368 __u8 dev_name[HCI_MAX_NAME_LENGTH];
369 __u8 short_name[HCI_MAX_SHORT_NAME_LENGTH];
370 __u8 eir[HCI_MAX_EIR_LENGTH];
371 __u16 appearance;
372 __u8 dev_class[3];
373 __u8 major_class;
374 __u8 minor_class;
375 __u8 max_page;
376 __u8 features[HCI_MAX_PAGES][8];
377 __u8 le_features[8];
378 __u8 le_accept_list_size;
379 __u8 le_resolv_list_size;
380 __u8 le_num_of_adv_sets;
381 __u8 le_states[8];
382 __u8 mesh_ad_types[16];
383 __u8 mesh_send_ref;
384 __u8 commands[64];
385 __u8 hci_ver;
386 __u16 hci_rev;
387 __u8 lmp_ver;
388 __u16 manufacturer;
389 __u16 lmp_subver;
390 __u16 voice_setting;
391 __u8 num_iac;
392 __u16 stored_max_keys;
393 __u16 stored_num_keys;
394 __u8 io_capability;
395 __s8 inq_tx_power;
396 __u8 err_data_reporting;
397 __u16 page_scan_interval;
398 __u16 page_scan_window;
399 __u8 page_scan_type;
400 __u8 le_adv_channel_map;
401 __u16 le_adv_min_interval;
402 __u16 le_adv_max_interval;
403 __u8 le_scan_type;
404 __u16 le_scan_interval;
405 __u16 le_scan_window;
406 __u16 le_scan_int_suspend;
407 __u16 le_scan_window_suspend;
408 __u16 le_scan_int_discovery;
409 __u16 le_scan_window_discovery;
410 __u16 le_scan_int_adv_monitor;
411 __u16 le_scan_window_adv_monitor;
412 __u16 le_scan_int_connect;
413 __u16 le_scan_window_connect;
414 __u16 le_conn_min_interval;
415 __u16 le_conn_max_interval;
416 __u16 le_conn_latency;
417 __u16 le_supv_timeout;
418 __u16 le_def_tx_len;
419 __u16 le_def_tx_time;
420 __u16 le_max_tx_len;
421 __u16 le_max_tx_time;
422 __u16 le_max_rx_len;
423 __u16 le_max_rx_time;
424 __u8 le_max_key_size;
425 __u8 le_min_key_size;
426 __u16 discov_interleaved_timeout;
427 __u16 conn_info_min_age;
428 __u16 conn_info_max_age;
429 __u16 auth_payload_timeout;
430 __u8 min_enc_key_size;
431 __u8 max_enc_key_size;
432 __u8 pairing_opts;
433 __u8 ssp_debug_mode;
434 __u8 hw_error_code;
435 __u32 clock;
436 __u16 advmon_allowlist_duration;
437 __u16 advmon_no_filter_duration;
438 __u8 enable_advmon_interleave_scan;
440 __u16 devid_source;
441 __u16 devid_vendor;
442 __u16 devid_product;
443 __u16 devid_version;
445 __u8 def_page_scan_type;
446 __u16 def_page_scan_int;
447 __u16 def_page_scan_window;
448 __u8 def_inq_scan_type;
449 __u16 def_inq_scan_int;
450 __u16 def_inq_scan_window;
451 __u16 def_br_lsto;
452 __u16 def_page_timeout;
453 __u16 def_multi_adv_rotation_duration;
454 __u16 def_le_autoconnect_timeout;
455 __s8 min_le_tx_power;
456 __s8 max_le_tx_power;
458 __u16 pkt_type;
459 __u16 esco_type;
460 __u16 link_policy;
461 __u16 link_mode;
463 __u32 idle_timeout;
464 __u16 sniff_min_interval;
465 __u16 sniff_max_interval;
467 unsigned int auto_accept_delay;
471 atomic_t cmd_cnt;
472 unsigned int acl_cnt;
473 unsigned int sco_cnt;
474 unsigned int le_cnt;
475 unsigned int iso_cnt;
477 unsigned int acl_mtu;
478 unsigned int sco_mtu;
479 unsigned int le_mtu;
480 unsigned int iso_mtu;
481 unsigned int acl_pkts;
482 unsigned int sco_pkts;
483 unsigned int le_pkts;
484 unsigned int iso_pkts;
486 unsigned long acl_last_tx;
487 unsigned long le_last_tx;
489 __u8 le_tx_def_phys;
490 __u8 le_rx_def_phys;
492 struct workqueue_struct *workqueue;
493 struct workqueue_struct *req_workqueue;
495 struct work_struct power_on;
496 struct delayed_work power_off;
497 struct work_struct error_reset;
498 struct work_struct cmd_sync_work;
499 struct list_head cmd_sync_work_list;
500 struct mutex cmd_sync_work_lock;
501 struct mutex unregister_lock;
502 struct work_struct cmd_sync_cancel_work;
503 struct work_struct reenable_adv_work;
505 __u16 discov_timeout;
506 struct delayed_work discov_off;
508 struct delayed_work service_cache;
510 struct delayed_work cmd_timer;
511 struct delayed_work ncmd_timer;
513 struct work_struct rx_work;
514 struct work_struct cmd_work;
515 struct work_struct tx_work;
517 struct delayed_work le_scan_disable;
519 struct sk_buff_head rx_q;
520 struct sk_buff_head raw_q;
521 struct sk_buff_head cmd_q;
523 struct sk_buff *sent_cmd;
524 struct sk_buff *recv_event;
526 struct mutex req_lock;
527 wait_queue_head_t req_wait_q;
528 __u32 req_status;
529 __u32 req_result;
530 struct sk_buff *req_skb;
531 struct sk_buff *req_rsp;
533 void *smp_data;
534 void *smp_bredr_data;
536 struct discovery_state discovery;
538 bool discovery_paused;
539 int advertising_old_state;
540 bool advertising_paused;
542 struct notifier_block suspend_notifier;
543 enum suspended_state suspend_state_next;
544 enum suspended_state suspend_state;
545 bool scanning_paused;
546 bool suspended;
547 u8 wake_reason;
571 struct hci_dev_stats stat; argument
579 struct hci_devcoredump dump; argument
581 struct device dev;
583 struct rfkill *rfkill;
586 hci_conn_flags_t conn_flags;
588 __s8 adv_tx_power;
589 __u8 adv_data[HCI_MAX_EXT_AD_LENGTH];
590 __u8 adv_data_len;
591 __u8 scan_rsp_data[HCI_MAX_EXT_AD_LENGTH];
592 __u8 scan_rsp_data_len;
593 __u8 per_adv_data[HCI_MAX_PER_AD_LENGTH];
594 __u8 per_adv_data_len;
596 struct list_head adv_instances;
597 unsigned int adv_instance_cnt;
598 __u8 cur_adv_instance;
599 __u16 adv_instance_timeout;
600 struct delayed_work adv_instance_expire;
602 struct idr adv_monitors_idr;
603 unsigned int adv_monitors_cnt;
605 __u8 irk[16];
606 __u32 rpa_timeout;
607 struct delayed_work rpa_expired;
608 bdaddr_t rpa;
610 struct delayed_work mesh_send_done;
612 enum {
616 } interleave_scan_state;
640 int (*open)(struct hci_dev *hdev); argument
641 int (*close)(struct hci_dev *hdev); argument
642 int (*flush)(struct hci_dev *hdev); argument
643 int (*setup)(struct hci_dev *hdev); argument
644 int (*shutdown)(struct hci_dev *hdev); argument
645 int (*send)(struct hci_dev *hdev, struct sk_buff *skb); argument
646 void (*notify)(struct hci_dev *hdev, unsigned int evt); argument
647 void (*hw_error)(struct hci_dev *hdev, u8 code); argument
648 int (*post_init)(struct hci_dev *hdev); argument
649 int (*set_diag)(struct hci_dev *hdev, bool enable); argument
650 int (*set_bdaddr)(struct hci_dev *hdev, const bdaddr_t *bdaddr); argument
651 void (*reset)(struct hci_dev *hdev); argument
652 bool (*wakeup)(struct hci_dev *hdev); argument
653 int (*set_quality_report)(struct hci_dev *hdev, bool enable); argument
654 int (*get_data_path_id)(struct hci_dev *hdev, __u8 *data_path); argument
655 int (*get_codec_config_data)(struct hci_dev *hdev, __u8 type, argument
658 u8 (*classify_pkt_type)(struct hci_dev *hdev, struct sk_buff *skb); argument