drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.h

Source file repositories/reference/linux-study-clean/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.h

File Facts

System
Linux kernel
Corpus path
drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.h
Extension
.h
Size
14940 bytes
Lines
503
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.

Dependency Surface

Detected Declarations

Annotated Snippet

struct brcmf_cfg80211_conf {
	u32 frag_threshold;
	u32 rts_threshold;
	u32 retry_short;
	u32 retry_long;
};

/* security information with currently associated ap */
struct brcmf_cfg80211_security {
	u32 wpa_versions;
	u32 auth_type;
	u32 cipher_pairwise;
	u32 cipher_group;
};

enum brcmf_profile_fwsup {
	BRCMF_PROFILE_FWSUP_NONE,
	BRCMF_PROFILE_FWSUP_PSK,
	BRCMF_PROFILE_FWSUP_1X,
	BRCMF_PROFILE_FWSUP_SAE
};

/**
 * enum brcmf_profile_fwauth - firmware authenticator profile
 *
 * @BRCMF_PROFILE_FWAUTH_NONE: no firmware authenticator
 * @BRCMF_PROFILE_FWAUTH_PSK: authenticator for WPA/WPA2-PSK
 * @BRCMF_PROFILE_FWAUTH_SAE: authenticator for SAE
 */
enum brcmf_profile_fwauth {
	BRCMF_PROFILE_FWAUTH_NONE,
	BRCMF_PROFILE_FWAUTH_PSK,
	BRCMF_PROFILE_FWAUTH_SAE
};

/**
 * enum brcmf_mgmt_tx_status - mgmt frame tx status
 *
 * @BRCMF_MGMT_TX_ACK: mgmt frame acked
 * @BRCMF_MGMT_TX_NOACK: mgmt frame not acked
 * @BRCMF_MGMT_TX_OFF_CHAN_COMPLETED: off-channel complete
 * @BRCMF_MGMT_TX_SEND_FRAME: mgmt frame tx is in progres
 */
enum brcmf_mgmt_tx_status {
	BRCMF_MGMT_TX_ACK,
	BRCMF_MGMT_TX_NOACK,
	BRCMF_MGMT_TX_OFF_CHAN_COMPLETED,
	BRCMF_MGMT_TX_SEND_FRAME
};

/**
 * struct brcmf_cfg80211_profile - profile information.
 *
 * @bssid: bssid of joined/joining ibss.
 * @sec: security information.
 * @key: key information
 */
struct brcmf_cfg80211_profile {
	u8 bssid[ETH_ALEN];
	struct brcmf_cfg80211_security sec;
	struct brcmf_wsec_key key[BRCMF_MAX_DEFAULT_KEYS];
	enum brcmf_profile_fwsup use_fwsup;
	u16 use_fwauth;
	bool is_ft;
};

/**
 * enum brcmf_vif_status - bit indices for vif status.
 *
 * @BRCMF_VIF_STATUS_READY: ready for operation.
 * @BRCMF_VIF_STATUS_CONNECTING: connect/join in progress.
 * @BRCMF_VIF_STATUS_CONNECTED: connected/joined successfully.
 * @BRCMF_VIF_STATUS_DISCONNECTING: disconnect/disable in progress.
 * @BRCMF_VIF_STATUS_AP_CREATED: AP operation started.
 * @BRCMF_VIF_STATUS_EAP_SUCCESS: EAPOL handshake successful.
 * @BRCMF_VIF_STATUS_ASSOC_SUCCESS: successful SET_SSID received.
 */
enum brcmf_vif_status {
	BRCMF_VIF_STATUS_READY,
	BRCMF_VIF_STATUS_CONNECTING,
	BRCMF_VIF_STATUS_CONNECTED,
	BRCMF_VIF_STATUS_DISCONNECTING,
	BRCMF_VIF_STATUS_AP_CREATED,
	BRCMF_VIF_STATUS_EAP_SUCCESS,
	BRCMF_VIF_STATUS_ASSOC_SUCCESS,
};

/**
 * struct vif_saved_ie - holds saved IEs for a virtual interface.
 *

Annotation

Implementation Notes