drivers/net/wireless/marvell/libertas/types.h
Source file repositories/reference/linux-study-clean/drivers/net/wireless/marvell/libertas/types.h
File Facts
- System
- Linux kernel
- Corpus path
drivers/net/wireless/marvell/libertas/types.h- Extension
.h- Size
- 6219 bytes
- Lines
- 271
- 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
linux/if_ether.hlinux/ieee80211.hasm/byteorder.h
Detected Declarations
struct ieee_ie_headerstruct ieee_ie_cf_param_setstruct ieee_ie_ibss_param_setstruct ieee_ie_fh_param_setstruct ieee_ie_ds_param_setstruct mrvl_ie_headerstruct mrvl_ie_datastruct mrvl_ie_rates_param_setstruct mrvl_ie_ssid_param_setstruct mrvl_ie_wildcard_ssid_param_setstruct chanscanmodestruct chanscanparamsetstruct mrvl_ie_chanlist_param_setstruct mrvl_ie_cf_param_setstruct mrvl_ie_ds_param_setstruct mrvl_ie_rsn_param_setstruct mrvl_ie_tsf_timestampstruct mrvl_ie_auth_typestruct mrvl_ie_power_capabilitystruct mrvl_ie_thresholdsstruct mrvl_ie_beacons_missedstruct mrvl_ie_num_probesstruct mrvl_ie_bcast_probestruct mrvl_ie_num_ssid_probestruct led_pinstruct mrvl_ie_ledgpiostruct led_bhvstruct mrvl_ie_ledbhvstruct mrvl_meshie_valstruct mrvl_meshiestruct mrvl_mesh_defaults
Annotated Snippet
struct ieee_ie_header {
u8 id;
u8 len;
} __packed;
struct ieee_ie_cf_param_set {
struct ieee_ie_header header;
u8 cfpcnt;
u8 cfpperiod;
__le16 cfpmaxduration;
__le16 cfpdurationremaining;
} __packed;
struct ieee_ie_ibss_param_set {
struct ieee_ie_header header;
__le16 atimwindow;
} __packed;
union ieee_ss_param_set {
struct ieee_ie_cf_param_set cf;
struct ieee_ie_ibss_param_set ibss;
} __packed;
struct ieee_ie_fh_param_set {
struct ieee_ie_header header;
__le16 dwelltime;
u8 hopset;
u8 hoppattern;
u8 hopindex;
} __packed;
struct ieee_ie_ds_param_set {
struct ieee_ie_header header;
u8 channel;
} __packed;
union ieee_phy_param_set {
struct ieee_ie_fh_param_set fh;
struct ieee_ie_ds_param_set ds;
} __packed;
/* TLV type ID definition */
#define PROPRIETARY_TLV_BASE_ID 0x0100
/* Terminating TLV type */
#define MRVL_TERMINATE_TLV_ID 0xffff
#define TLV_TYPE_SSID 0x0000
#define TLV_TYPE_RATES 0x0001
#define TLV_TYPE_PHY_FH 0x0002
#define TLV_TYPE_PHY_DS 0x0003
#define TLV_TYPE_CF 0x0004
#define TLV_TYPE_IBSS 0x0006
#define TLV_TYPE_DOMAIN 0x0007
#define TLV_TYPE_POWER_CAPABILITY 0x0021
#define TLV_TYPE_KEY_MATERIAL (PROPRIETARY_TLV_BASE_ID + 0)
#define TLV_TYPE_CHANLIST (PROPRIETARY_TLV_BASE_ID + 1)
#define TLV_TYPE_NUMPROBES (PROPRIETARY_TLV_BASE_ID + 2)
#define TLV_TYPE_RSSI_LOW (PROPRIETARY_TLV_BASE_ID + 4)
#define TLV_TYPE_SNR_LOW (PROPRIETARY_TLV_BASE_ID + 5)
#define TLV_TYPE_FAILCOUNT (PROPRIETARY_TLV_BASE_ID + 6)
#define TLV_TYPE_BCNMISS (PROPRIETARY_TLV_BASE_ID + 7)
#define TLV_TYPE_LED_GPIO (PROPRIETARY_TLV_BASE_ID + 8)
#define TLV_TYPE_LEDBEHAVIOR (PROPRIETARY_TLV_BASE_ID + 9)
#define TLV_TYPE_PASSTHROUGH (PROPRIETARY_TLV_BASE_ID + 10)
#define TLV_TYPE_REASSOCAP (PROPRIETARY_TLV_BASE_ID + 11)
#define TLV_TYPE_POWER_TBL_2_4GHZ (PROPRIETARY_TLV_BASE_ID + 12)
#define TLV_TYPE_POWER_TBL_5GHZ (PROPRIETARY_TLV_BASE_ID + 13)
#define TLV_TYPE_BCASTPROBE (PROPRIETARY_TLV_BASE_ID + 14)
#define TLV_TYPE_NUMSSID_PROBE (PROPRIETARY_TLV_BASE_ID + 15)
#define TLV_TYPE_WMMQSTATUS (PROPRIETARY_TLV_BASE_ID + 16)
#define TLV_TYPE_CRYPTO_DATA (PROPRIETARY_TLV_BASE_ID + 17)
#define TLV_TYPE_WILDCARDSSID (PROPRIETARY_TLV_BASE_ID + 18)
#define TLV_TYPE_TSFTIMESTAMP (PROPRIETARY_TLV_BASE_ID + 19)
#define TLV_TYPE_RSSI_HIGH (PROPRIETARY_TLV_BASE_ID + 22)
#define TLV_TYPE_SNR_HIGH (PROPRIETARY_TLV_BASE_ID + 23)
#define TLV_TYPE_WPS_ENROLLEE (PROPRIETARY_TLV_BASE_ID + 27)
#define TLV_TYPE_AUTH_TYPE (PROPRIETARY_TLV_BASE_ID + 31)
#define TLV_TYPE_MESH_ID (PROPRIETARY_TLV_BASE_ID + 37)
#define TLV_TYPE_OLD_MESH_ID (PROPRIETARY_TLV_BASE_ID + 291)
/* TLV related data structures */
Annotation
- Immediate include surface: `linux/if_ether.h`, `linux/ieee80211.h`, `asm/byteorder.h`.
- Detected declarations: `struct ieee_ie_header`, `struct ieee_ie_cf_param_set`, `struct ieee_ie_ibss_param_set`, `struct ieee_ie_fh_param_set`, `struct ieee_ie_ds_param_set`, `struct mrvl_ie_header`, `struct mrvl_ie_data`, `struct mrvl_ie_rates_param_set`, `struct mrvl_ie_ssid_param_set`, `struct mrvl_ie_wildcard_ssid_param_set`.
- 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.