drivers/staging/rtl8723bs/include/wlan_bssdef.h
Source file repositories/reference/linux-study-clean/drivers/staging/rtl8723bs/include/wlan_bssdef.h
File Facts
- System
- Linux kernel
- Corpus path
drivers/staging/rtl8723bs/include/wlan_bssdef.h- Extension
.h- Size
- 6098 bytes
- Lines
- 216
- Domain
- Driver Families
- Bucket
- drivers/staging
- 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 ndis_802_11_ssidstruct ndis_802_11_confstruct ndis_802_11_fix_iestruct ndis_80211_var_iestruct ndis_802_11_wepstruct wlan_phy_infostruct wlan_bcn_infostruct wlan_bssid_exstruct wlan_networkenum ndis_802_11_network_typeenum ndis_802_11_network_infrastructureenum ndis_802_11_authentication_modefunction get_wlan_bssid_ex_sz
Annotated Snippet
struct ndis_802_11_ssid {
u32 ssid_length;
u8 ssid[32];
};
enum ndis_802_11_network_type {
Ndis802_11FH,
Ndis802_11DS,
Ndis802_11OFDM5,
Ndis802_11OFDM24,
Ndis802_11NetworkTypeMax /* not a real type, defined as an upper bound */
};
/*
FW will only save the channel number in DSConfig.
ODI Handler will convert the channel number to freq. number.
*/
struct ndis_802_11_conf {
u32 length; /* Length of structure */
u32 beacon_period; /* units are Kusec */
u32 atim_window; /* units are Kusec */
u32 ds_config; /* Frequency, units are kHz */
};
enum ndis_802_11_network_infrastructure {
Ndis802_11IBSS,
Ndis802_11Infrastructure,
Ndis802_11AutoUnknown,
Ndis802_11InfrastructureMax, /* Not a real value, defined as upper bound */
Ndis802_11APMode,
};
struct ndis_802_11_fix_ie {
u8 time_stamp[8];
u16 beacon_interval;
u16 capabilities;
};
struct ndis_80211_var_ie {
u8 element_id;
u8 length;
u8 data[];
};
/* Length is the 4 bytes multiples of the sum of
* ETH_ALEN + 2 +
* sizeof (struct ndis_802_11_ssid) + sizeof (u32) +
* sizeof (long) + sizeof (enum ndis_802_11_network_type) +
* sizeof (struct ndis_802_11_conf) + sizeof (NDIS_802_11_RATES_EX) + ie_length
*
* Except for ie_length, all other fields are fixed length. Therefore, we can
* define a macro to present the partial sum.
*/
enum ndis_802_11_authentication_mode {
Ndis802_11AuthModeOpen,
Ndis802_11AuthModeShared,
Ndis802_11AuthModeAutoSwitch,
Ndis802_11AuthModeWPA,
Ndis802_11AuthModeWPAPSK,
Ndis802_11AuthModeWPANone,
Ndis802_11AuthModeWAPI,
Ndis802_11AuthModeMax /* Not a real mode, defined as upper bound */
};
enum {
Ndis802_11WEPEnabled,
Ndis802_11Encryption1Enabled = Ndis802_11WEPEnabled,
Ndis802_11WEPDisabled,
Ndis802_11EncryptionDisabled = Ndis802_11WEPDisabled,
Ndis802_11WEPKeyAbsent,
Ndis802_11Encryption1KeyAbsent = Ndis802_11WEPKeyAbsent,
Ndis802_11WEPNotSupported,
Ndis802_11EncryptionNotSupported = Ndis802_11WEPNotSupported,
Ndis802_11Encryption2Enabled,
Ndis802_11Encryption2KeyAbsent,
Ndis802_11Encryption3Enabled,
Ndis802_11Encryption3KeyAbsent,
Ndis802_11_EncrypteionWAPI
};
#define NDIS_802_11_AI_REQFI_CAPABILITIES 1
#define NDIS_802_11_AI_REQFI_LISTENINTERVAL 2
#define NDIS_802_11_AI_REQFI_CURRENTAPADDRESS 4
#define NDIS_802_11_AI_RESFI_CAPABILITIES 1
#define NDIS_802_11_AI_RESFI_STATUSCODE 2
#define NDIS_802_11_AI_RESFI_ASSOCIATIONID 4
/* Key mapping keys require a BSSID */
Annotation
- Detected declarations: `struct ndis_802_11_ssid`, `struct ndis_802_11_conf`, `struct ndis_802_11_fix_ie`, `struct ndis_80211_var_ie`, `struct ndis_802_11_wep`, `struct wlan_phy_info`, `struct wlan_bcn_info`, `struct wlan_bssid_ex`, `struct wlan_network`, `enum ndis_802_11_network_type`.
- Atlas domain: Driver Families / drivers/staging.
- 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.