Lines Matching defs:hci_dev
354 struct hci_dev { struct
355 struct list_head list;
356 struct mutex lock;
358 struct ida unset_handle_ida;
360 const char *name;
361 unsigned long flags;
362 __u16 id;
363 __u8 bus;
364 __u8 dev_type;
365 bdaddr_t bdaddr;
366 bdaddr_t setup_addr;
367 bdaddr_t public_addr;
368 bdaddr_t random_addr;
369 bdaddr_t static_addr;
370 __u8 adv_addr_type;
371 __u8 dev_name[HCI_MAX_NAME_LENGTH];
372 __u8 short_name[HCI_MAX_SHORT_NAME_LENGTH];
373 __u8 eir[HCI_MAX_EIR_LENGTH];
374 __u16 appearance;
375 __u8 dev_class[3];
376 __u8 major_class;
377 __u8 minor_class;
378 __u8 max_page;
379 __u8 features[HCI_MAX_PAGES][8];
380 __u8 le_features[8];
381 __u8 le_accept_list_size;
382 __u8 le_resolv_list_size;
383 __u8 le_num_of_adv_sets;
384 __u8 le_states[8];
385 __u8 mesh_ad_types[16];
386 __u8 mesh_send_ref;
387 __u8 commands[64];
388 __u8 hci_ver;
389 __u16 hci_rev;
390 __u8 lmp_ver;
391 __u16 manufacturer;
392 __u16 lmp_subver;
393 __u16 voice_setting;
394 __u8 num_iac;
395 __u16 stored_max_keys;
396 __u16 stored_num_keys;
397 __u8 io_capability;
398 __s8 inq_tx_power;
399 __u8 err_data_reporting;
400 __u16 page_scan_interval;
401 __u16 page_scan_window;
402 __u8 page_scan_type;
403 __u8 le_adv_channel_map;
404 __u16 le_adv_min_interval;
405 __u16 le_adv_max_interval;
406 __u8 le_scan_type;
407 __u16 le_scan_interval;
408 __u16 le_scan_window;
409 __u16 le_scan_int_suspend;
410 __u16 le_scan_window_suspend;
411 __u16 le_scan_int_discovery;
412 __u16 le_scan_window_discovery;
413 __u16 le_scan_int_adv_monitor;
414 __u16 le_scan_window_adv_monitor;
415 __u16 le_scan_int_connect;
416 __u16 le_scan_window_connect;
417 __u16 le_conn_min_interval;
418 __u16 le_conn_max_interval;
419 __u16 le_conn_latency;
420 __u16 le_supv_timeout;
421 __u16 le_def_tx_len;
422 __u16 le_def_tx_time;
423 __u16 le_max_tx_len;
424 __u16 le_max_tx_time;
425 __u16 le_max_rx_len;
426 __u16 le_max_rx_time;
427 __u8 le_max_key_size;
428 __u8 le_min_key_size;
429 __u16 discov_interleaved_timeout;
430 __u16 conn_info_min_age;
431 __u16 conn_info_max_age;
432 __u16 auth_payload_timeout;
433 __u8 min_enc_key_size;
434 __u8 max_enc_key_size;
435 __u8 pairing_opts;
436 __u8 ssp_debug_mode;
437 __u8 hw_error_code;
438 __u32 clock;
439 __u16 advmon_allowlist_duration;
440 __u16 advmon_no_filter_duration;
441 __u8 enable_advmon_interleave_scan;
443 __u16 devid_source;
444 __u16 devid_vendor;
445 __u16 devid_product;
446 __u16 devid_version;
448 __u8 def_page_scan_type;
449 __u16 def_page_scan_int;
450 __u16 def_page_scan_window;
451 __u8 def_inq_scan_type;
452 __u16 def_inq_scan_int;
453 __u16 def_inq_scan_window;
454 __u16 def_br_lsto;
455 __u16 def_page_timeout;
456 __u16 def_multi_adv_rotation_duration;
457 __u16 def_le_autoconnect_timeout;
458 __s8 min_le_tx_power;
459 __s8 max_le_tx_power;
461 __u16 pkt_type;
462 __u16 esco_type;
463 __u16 link_policy;
464 __u16 link_mode;
466 __u32 idle_timeout;
467 __u16 sniff_min_interval;
468 __u16 sniff_max_interval;
470 __u8 amp_status;
471 __u32 amp_total_bw;
472 __u32 amp_max_bw;
473 __u32 amp_min_latency;
474 __u32 amp_max_pdu;
475 __u8 amp_type;
476 __u16 amp_pal_cap;
477 __u16 amp_assoc_size;
478 __u32 amp_max_flush_to;
479 __u32 amp_be_flush_to;
481 struct amp_assoc loc_assoc;
483 __u8 flow_ctl_mode;
485 unsigned int auto_accept_delay;
487 unsigned long quirks;
489 atomic_t cmd_cnt;
490 unsigned int acl_cnt;
491 unsigned int sco_cnt;
492 unsigned int le_cnt;
493 unsigned int iso_cnt;
495 unsigned int acl_mtu;
496 unsigned int sco_mtu;
497 unsigned int le_mtu;
498 unsigned int iso_mtu;
499 unsigned int acl_pkts;
500 unsigned int sco_pkts;
501 unsigned int le_pkts;
502 unsigned int iso_pkts;
504 __u16 block_len;
505 __u16 block_mtu;
506 __u16 num_blocks;
507 __u16 block_cnt;
509 unsigned long acl_last_tx;
510 unsigned long sco_last_tx;
511 unsigned long le_last_tx;
513 __u8 le_tx_def_phys;
514 __u8 le_rx_def_phys;
516 struct workqueue_struct *workqueue;
517 struct workqueue_struct *req_workqueue;
519 struct work_struct power_on;
520 struct delayed_work power_off;
521 struct work_struct error_reset;
522 struct work_struct cmd_sync_work;
523 struct list_head cmd_sync_work_list;
524 struct mutex cmd_sync_work_lock;
525 struct mutex unregister_lock;
526 struct work_struct cmd_sync_cancel_work;
527 struct work_struct reenable_adv_work;
529 __u16 discov_timeout;
530 struct delayed_work discov_off;
532 struct delayed_work service_cache;
534 struct delayed_work cmd_timer;
535 struct delayed_work ncmd_timer;
537 struct work_struct rx_work;
538 struct work_struct cmd_work;
539 struct work_struct tx_work;
541 struct delayed_work le_scan_disable;
543 struct sk_buff_head rx_q;
544 struct sk_buff_head raw_q;
545 struct sk_buff_head cmd_q;
547 struct sk_buff *sent_cmd;
548 struct sk_buff *recv_event;
550 struct mutex req_lock;
551 wait_queue_head_t req_wait_q;
552 __u32 req_status;
553 __u32 req_result;
554 struct sk_buff *req_skb;
556 void *smp_data;
557 void *smp_bredr_data;
559 struct discovery_state discovery;
561 int discovery_old_state;
562 bool discovery_paused;
563 int advertising_old_state;
564 bool advertising_paused;
566 struct notifier_block suspend_notifier;
567 enum suspended_state suspend_state_next;
568 enum suspended_state suspend_state;
569 bool scanning_paused;
570 bool suspended;
594 struct hci_dev_stats stat; argument
602 struct hci_devcoredump dump; argument
604 struct device dev;
606 struct rfkill *rfkill;
609 hci_conn_flags_t conn_flags;
611 __s8 adv_tx_power;
612 __u8 adv_data[HCI_MAX_EXT_AD_LENGTH];
613 __u8 adv_data_len;
614 __u8 scan_rsp_data[HCI_MAX_EXT_AD_LENGTH];
615 __u8 scan_rsp_data_len;
616 __u8 per_adv_data[HCI_MAX_PER_AD_LENGTH];
617 __u8 per_adv_data_len;
619 struct list_head adv_instances;
620 unsigned int adv_instance_cnt;
621 __u8 cur_adv_instance;
622 __u16 adv_instance_timeout;
623 struct delayed_work adv_instance_expire;
625 struct idr adv_monitors_idr;
626 unsigned int adv_monitors_cnt;
628 __u8 irk[16];
629 __u32 rpa_timeout;
630 struct delayed_work rpa_expired;
631 bdaddr_t rpa;
633 struct delayed_work mesh_send_done;
635 enum {
661 int (*open)(struct hci_dev *hdev); argument
662 int (*close)(struct hci_dev *hdev); argument
663 int (*flush)(struct hci_dev *hdev); argument
664 int (*setup)(struct hci_dev *hdev); argument
665 int (*shutdown)(struct hci_dev *hdev); argument
666 int (*send)(struct hci_dev *hdev, struct sk_buff *skb); argument
667 void (*notify)(struct hci_dev *hdev, unsigned int evt); argument
668 void (*hw_error)(struct hci_dev *hdev, u8 code); argument
669 int (*post_init)(struct hci_dev *hdev); argument
670 int (*set_diag)(struct hci_dev *hdev, bool enable); argument
671 int (*set_bdaddr)(struct hci_dev *hdev, const bdaddr_t *bdaddr); argument
672 void (*cmd_timeout)(struct hci_dev *hdev); argument
673 void (*reset)(struct hci_dev *hdev); argument
674 bool (*wakeup)(struct hci_dev *hdev); argument
675 int (*set_quality_report)(struct hci_dev *hdev, bool enable); argument
676 int (*get_data_path_id)(struct hci_dev *hdev, __u8 *data_path); argument
677 int (*get_codec_config_data)(struct hci_dev *hdev, __u8 type, argument