drivers/bluetooth/btmtk.h
Source file repositories/reference/linux-study-clean/drivers/bluetooth/btmtk.h
File Facts
- System
- Linux kernel
- Corpus path
drivers/bluetooth/btmtk.h- Extension
.h- Size
- 6870 bytes
- Lines
- 310
- Domain
- Driver Families
- Bucket
- drivers/bluetooth
- Inferred role
- Driver Families: implementation source
- Status
- source implementation candidate
Why This File Exists
Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.
- Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.
- Defines or uses C structs; map object ownership, embedded links, reference counts, and lock ownership.
Dependency Surface
- No C-style include directives detected by the generator.
Detected Declarations
struct btmtk_wmt_hdrstruct btmtk_hci_wmt_cmdstruct btmtk_hci_wmt_evtstruct btmtk_hci_wmt_evt_funccstruct btmtk_hci_wmt_evt_regstruct btmtk_tci_sleepstruct btmtk_wakeonstruct btmtk_scostruct reg_read_cmdstruct reg_write_cmdstruct btmtk_hci_wmt_paramsstruct btmtk_coredump_infostruct btmtk_datafunction btmtk_set_bdaddrfunction btmtk_setup_firmware_79xxfunction btmtk_setup_firmwarefunction btmtk_reset_syncfunction btmtk_process_coredumpfunction btmtk_fw_get_filenamefunction btmtk_usb_recv_aclfunction btmtk_usb_resumefunction btmtk_usb_suspendfunction btmtk_usb_setupfunction btmtk_usb_shutdownfunction btmtk_recv_event
Annotated Snippet
struct btmtk_wmt_hdr {
u8 dir;
u8 op;
__le16 dlen;
u8 flag;
} __packed;
struct btmtk_hci_wmt_cmd {
struct btmtk_wmt_hdr hdr;
u8 data[];
} __packed;
struct btmtk_hci_wmt_evt {
struct hci_event_hdr hhdr;
struct btmtk_wmt_hdr whdr;
} __packed;
struct btmtk_hci_wmt_evt_funcc {
struct btmtk_hci_wmt_evt hwhdr;
__be16 status;
} __packed;
struct btmtk_hci_wmt_evt_reg {
struct btmtk_hci_wmt_evt hwhdr;
u8 rsv[2];
u8 num;
__le32 addr;
__le32 val;
} __packed;
struct btmtk_tci_sleep {
u8 mode;
__le16 duration;
__le16 host_duration;
u8 host_wakeup_pin;
u8 time_compensation;
} __packed;
struct btmtk_wakeon {
u8 mode;
u8 gpo;
u8 active_high;
__le16 enable_delay;
__le16 wakeup_delay;
} __packed;
struct btmtk_sco {
u8 clock_config;
u8 transmit_format_config;
u8 channel_format_config;
u8 channel_select_config;
} __packed;
struct reg_read_cmd {
u8 type;
u8 rsv;
u8 num;
__le32 addr;
} __packed;
struct reg_write_cmd {
u8 type;
u8 rsv;
u8 num;
__le32 addr;
__le32 data;
__le32 mask;
} __packed;
struct btmtk_hci_wmt_params {
u8 op;
u8 flag;
u16 dlen;
const void *data;
u32 *status;
};
enum {
BTMTK_TX_WAIT_VND_EVT,
BTMTK_FIRMWARE_LOADED,
BTMTK_HW_RESET_ACTIVE,
BTMTK_ISOPKT_OVER_INTR,
BTMTK_ISOPKT_RUNNING,
BTMTK_FIRMWARE_DL_RETRY,
};
typedef int (*btmtk_reset_sync_func_t)(struct hci_dev *, void *);
struct btmtk_coredump_info {
const char *driver_name;
Annotation
- Detected declarations: `struct btmtk_wmt_hdr`, `struct btmtk_hci_wmt_cmd`, `struct btmtk_hci_wmt_evt`, `struct btmtk_hci_wmt_evt_funcc`, `struct btmtk_hci_wmt_evt_reg`, `struct btmtk_tci_sleep`, `struct btmtk_wakeon`, `struct btmtk_sco`, `struct reg_read_cmd`, `struct reg_write_cmd`.
- Atlas domain: Driver Families / drivers/bluetooth.
- Implementation status: source implementation candidate.
Implementation Notes
- This generated page is the file-by-file coverage layer; curated subsystem chapters should link here when they synthesize a multi-file control flow.
- Core OS pages should be promoted from atlas-only to deep-reviewed when they explain data structures, invariants, locking, lifecycle, and C implementation snippets.
- Driver-family pages are intentionally pattern-oriented unless they are part of the selected PCIe/NVMe representative device path.