drivers/net/wireless/silabs/wfx/hif_api_cmd.h
Source file repositories/reference/linux-study-clean/drivers/net/wireless/silabs/wfx/hif_api_cmd.h
File Facts
- System
- Linux kernel
- Corpus path
drivers/net/wireless/silabs/wfx/hif_api_cmd.h- Extension
.h- Size
- 13650 bytes
- Lines
- 554
- Domain
- Driver Families
- Bucket
- drivers/net
- 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
hif_api_general.h
Detected Declarations
struct wfx_hif_req_resetstruct wfx_hif_cnf_resetstruct wfx_hif_req_read_mibstruct wfx_hif_cnf_read_mibstruct wfx_hif_req_write_mibstruct wfx_hif_cnf_write_mibstruct wfx_hif_req_update_iestruct wfx_hif_cnf_update_iestruct wfx_hif_ssid_defstruct wfx_hif_req_start_scan_altstruct wfx_hif_cnf_start_scanstruct wfx_hif_cnf_stop_scanstruct wfx_hif_ind_scan_cmplstruct wfx_hif_req_txstruct wfx_hif_cnf_txstruct wfx_hif_cnf_multi_transmitstruct wfx_hif_ind_rxstruct wfx_hif_req_edca_queue_paramsstruct wfx_hif_cnf_edca_queue_paramsstruct wfx_hif_req_joinstruct wfx_hif_cnf_joinstruct wfx_hif_ind_join_completestruct wfx_hif_req_set_bss_paramsstruct wfx_hif_cnf_set_bss_paramsstruct wfx_hif_req_set_pm_modestruct wfx_hif_cnf_set_pm_modestruct wfx_hif_ind_set_pm_mode_cmplstruct wfx_hif_req_startstruct wfx_hif_cnf_startstruct wfx_hif_req_beacon_transmitstruct wfx_hif_cnf_beacon_transmitstruct wfx_hif_req_map_linkstruct wfx_hif_cnf_map_linkstruct wfx_hif_ind_suspend_resume_txstruct wfx_hif_wep_pairwise_keystruct wfx_hif_wep_group_keystruct wfx_hif_tkip_pairwise_keystruct wfx_hif_tkip_group_keystruct wfx_hif_aes_pairwise_keystruct wfx_hif_aes_group_keystruct wfx_hif_wapi_pairwise_keystruct wfx_hif_wapi_group_keystruct wfx_hif_igtk_group_keystruct wfx_hif_req_add_keystruct wfx_hif_cnf_add_keystruct wfx_hif_req_remove_keystruct wfx_hif_cnf_remove_keystruct wfx_hif_ind_event
Annotated Snippet
struct wfx_hif_req_reset {
u8 reset_stat:1;
u8 reset_all_int:1;
u8 reserved1:6;
u8 reserved2[3];
} __packed;
struct wfx_hif_cnf_reset {
__le32 status;
} __packed;
struct wfx_hif_req_read_mib {
__le16 mib_id;
__le16 reserved;
} __packed;
struct wfx_hif_cnf_read_mib {
__le32 status;
__le16 mib_id;
__le16 length;
u8 mib_data[];
} __packed;
struct wfx_hif_req_write_mib {
__le16 mib_id;
__le16 length;
u8 mib_data[];
} __packed;
struct wfx_hif_cnf_write_mib {
__le32 status;
} __packed;
struct wfx_hif_req_update_ie {
u8 beacon:1;
u8 probe_resp:1;
u8 probe_req:1;
u8 reserved1:5;
u8 reserved2;
__le16 num_ies;
u8 ie[];
} __packed;
struct wfx_hif_cnf_update_ie {
__le32 status;
} __packed;
struct wfx_hif_ssid_def {
__le32 ssid_length;
u8 ssid[IEEE80211_MAX_SSID_LEN];
} __packed;
#define HIF_API_MAX_NB_SSIDS 2
#define HIF_API_MAX_NB_CHANNELS 14
struct wfx_hif_req_start_scan_alt {
u8 band;
u8 maintain_current_bss:1;
u8 periodic:1;
u8 reserved1:6;
u8 disallow_ps:1;
u8 reserved2:1;
u8 short_preamble:1;
u8 reserved3:5;
u8 max_transmit_rate;
__le16 periodic_interval;
u8 reserved4;
s8 periodic_rssi_thr;
u8 num_of_probe_requests;
u8 probe_delay;
u8 num_of_ssids;
u8 num_of_channels;
__le32 min_channel_time;
__le32 max_channel_time;
__le32 tx_power_level; /* signed value */
struct wfx_hif_ssid_def ssid_def[HIF_API_MAX_NB_SSIDS];
u8 channel_list[];
} __packed;
struct wfx_hif_cnf_start_scan {
__le32 status;
} __packed;
struct wfx_hif_cnf_stop_scan {
__le32 status;
} __packed;
enum wfx_hif_pm_mode_status {
HIF_PM_MODE_ACTIVE = 0x0,
HIF_PM_MODE_PS = 0x1,
Annotation
- Immediate include surface: `hif_api_general.h`.
- Detected declarations: `struct wfx_hif_req_reset`, `struct wfx_hif_cnf_reset`, `struct wfx_hif_req_read_mib`, `struct wfx_hif_cnf_read_mib`, `struct wfx_hif_req_write_mib`, `struct wfx_hif_cnf_write_mib`, `struct wfx_hif_req_update_ie`, `struct wfx_hif_cnf_update_ie`, `struct wfx_hif_ssid_def`, `struct wfx_hif_req_start_scan_alt`.
- Atlas domain: Driver Families / drivers/net.
- 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.