'\" t .\" Title: struct ieee80211_vif .\" Author: .\" Generator: DocBook XSL Stylesheets v1.79.1 .\" Date: January 2017 .\" Manual: The basic mac80211 driver interface .\" Source: Kernel Hackers Manual 4.8.15 .\" Language: English .\" .TH "STRUCT IEEE80211_VIF" "9" "January 2017" "Kernel Hackers Manual 4\&.8\&." "The basic mac80211 driver inte" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "NAME" struct_ieee80211_vif \- per\-interface data .SH "SYNOPSIS" .sp .nf struct ieee80211_vif { enum nl80211_iftype type; struct ieee80211_bss_conf bss_conf; u8 addr[ETH_ALEN]; bool p2p; bool csa_active; bool mu_mimo_owner; u8 cab_queue; u8 hw_queue[IEEE80211_NUM_ACS]; struct ieee80211_txq * txq; struct ieee80211_chanctx_conf __rcu * chanctx_conf; u32 driver_flags; #ifdef CONFIG_MAC80211_DEBUGFS struct dentry * debugfs_dir; #endif unsigned int probe_req_reg; u8 drv_priv[0]; }; .fi .SH "MEMBERS" .PP type .RS 4 type of this virtual interface .RE .PP bss_conf .RS 4 BSS configuration for this interface, either our own or the BSS we\*(Aqre associated to .RE .PP addr[ETH_ALEN] .RS 4 address of this interface .RE .PP p2p .RS 4 indicates whether this AP or STA interface is a p2p interface, i\&.e\&. a GO or p2p\-sta respectively .RE .PP csa_active .RS 4 marks whether a channel switch is going on\&. Internally it is write\-protected by sdata_lock and local\->mtx so holding either is fine for read access\&. .RE .PP mu_mimo_owner .RS 4 indicates interface owns MU\-MIMO capability .RE .PP cab_queue .RS 4 content\-after\-beacon (DTIM beacon really) queue, AP mode only .RE .PP hw_queue[IEEE80211_NUM_ACS] .RS 4 hardware queue for each AC .RE .PP txq .RS 4 the multicast data TX queue (if driver uses the TXQ abstraction) .RE .PP chanctx_conf .RS 4 The channel context this interface is assigned to, or \fBNULL\fR when it is not assigned\&. This pointer is RCU\-protected due to the TX path needing to access it; even though the netdev carrier will always be off when it is \fBNULL\fR there can still be races and packets could be processed after it switches back to \fBNULL\fR\&. .RE .PP driver_flags .RS 4 flags/capabilities the driver has for this interface, these need to be set (or cleared) when the interface is added or, if supported by the driver, the interface type is changed at runtime, mac80211 will never touch this field .RE .PP debugfs_dir .RS 4 debugfs dentry, can be used by drivers to create own per interface debug files\&. Note that it will be NULL for the virtual monitor interface (if that is requested\&.) .RE .PP probe_req_reg .RS 4 probe requests should be reported to mac80211 for this interface\&. .RE .PP drv_priv[0] .RS 4 data area for driver use, will always be aligned to sizeof(void *)\&. .RE .SH "DESCRIPTION" .PP .PP Data in this structure is continually present for driver use during the life of a virtual interface\&. .SH "AUTHOR" .PP \fBJohannes Berg\fR <\&johannes@sipsolutions.net\&> .RS 4 Author. .RE .SH "COPYRIGHT" .br