Lines Matching defs:hci_dev

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