'\" t .\" Title: struct ieee80211_hw .\" 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_HW" "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_hw \- hardware information and state .SH "SYNOPSIS" .sp .nf struct ieee80211_hw { struct ieee80211_conf conf; struct wiphy * wiphy; const char * rate_control_algorithm; void * priv; unsigned long flags[BITS_TO_LONGS(NUM_IEEE80211_HW_FLAGS)]; unsigned int extra_tx_headroom; unsigned int extra_beacon_tailroom; int vif_data_size; int sta_data_size; int chanctx_data_size; int txq_data_size; u16 queues; u16 max_listen_interval; s8 max_signal; u8 max_rates; u8 max_report_rates; u8 max_rate_tries; u8 max_rx_aggregation_subframes; u8 max_tx_aggregation_subframes; u8 max_tx_fragments; u8 offchannel_tx_hw_queue; u8 radiotap_mcs_details; u16 radiotap_vht_details; netdev_features_t netdev_features; u8 uapsd_queues; u8 uapsd_max_sp_len; u8 n_cipher_schemes; const struct ieee80211_cipher_scheme * cipher_schemes; }; .fi .SH "MEMBERS" .PP conf .RS 4 struct ieee80211_conf, device configuration, don\*(Aqt use\&. .RE .PP wiphy .RS 4 This points to the struct wiphy allocated for this 802\&.11 PHY\&. You must fill in the \fIperm_addr\fR and \fIdev\fR members of this structure using \fBSET_IEEE80211_DEV\fR and \fBSET_IEEE80211_PERM_ADDR\fR\&. Additionally, all supported bands (with channels, bitrates) are registered here\&. .RE .PP rate_control_algorithm .RS 4 rate control algorithm for this hardware\&. If unset (NULL), the default algorithm will be used\&. Must be set before calling \fBieee80211_register_hw\fR\&. .RE .PP priv .RS 4 pointer to private area that was allocated for driver use along with this structure\&. .RE .PP flags[BITS_TO_LONGS(NUM_IEEE80211_HW_FLAGS)] .RS 4 hardware flags, see enum ieee80211_hw_flags\&. .RE .PP extra_tx_headroom .RS 4 headroom to reserve in each transmit skb for use by the driver (e\&.g\&. for transmit headers\&.) .RE .PP extra_beacon_tailroom .RS 4 tailroom to reserve in each beacon tx skb\&. Can be used by drivers to add extra IEs\&. .RE .PP vif_data_size .RS 4 size (in bytes) of the drv_priv data area within struct ieee80211_vif\&. .RE .PP sta_data_size .RS 4 size (in bytes) of the drv_priv data area within struct ieee80211_sta\&. .RE .PP chanctx_data_size .RS 4 size (in bytes) of the drv_priv data area within struct ieee80211_chanctx_conf\&. .RE .PP txq_data_size .RS 4 size (in bytes) of the drv_priv data area within \fIstruct\fR ieee80211_txq\&. .RE .PP queues .RS 4 number of available hardware transmit queues for data packets\&. WMM/QoS requires at least four, these queues need to have configurable access parameters\&. .RE .PP max_listen_interval .RS 4 max listen interval in units of beacon interval that HW supports .RE .PP max_signal .RS 4 Maximum value for signal (rssi) in RX information, used only when \fIIEEE80211_HW_SIGNAL_UNSPEC\fR or \fIIEEE80211_HW_SIGNAL_DB\fR .RE .PP max_rates .RS 4 maximum number of alternate rate retry stages the hw can handle\&. .RE .PP max_report_rates .RS 4 maximum number of alternate rate retry stages the hw can report back\&. .RE .PP max_rate_tries .RS 4 maximum number of tries for each stage .RE .PP max_rx_aggregation_subframes .RS 4 maximum buffer size (number of sub\-frames) to be used for A\-MPDU block ack receiver aggregation\&. This is only relevant if the device has restrictions on the number of subframes, if it relies on mac80211 to do reordering it shouldn\*(Aqt be set\&. .RE .PP max_tx_aggregation_subframes .RS 4 maximum number of subframes in an aggregate an HT driver will transmit\&. Though ADDBA will advertise a constant value of 64 as some older APs can crash if the window size is smaller (an example is LinkSys WRT120N with FW v1\&.0\&.07 build 002 Jun 18 2012)\&. .RE .PP max_tx_fragments .RS 4 maximum number of tx buffers per (A)\-MSDU, sum of 1 + skb_shinfo(skb)\->nr_frags for each skb in the frag_list\&. .RE .PP offchannel_tx_hw_queue .RS 4 HW queue ID to use for offchannel TX (if \fBIEEE80211_HW_QUEUE_CONTROL\fR is set) .RE .PP radiotap_mcs_details .RS 4 lists which MCS information can the HW reports, by default it is set to _MCS, _GI and _BW but doesn\*(Aqt include _FMT\&. Use \fBIEEE80211_RADIOTAP_MCS_HAVE_\fR* values, only adding _BW is supported today\&. .RE .PP radiotap_vht_details .RS 4 lists which VHT MCS information the HW reports, the default is _GI | _BANDWIDTH\&. Use the \fBIEEE80211_RADIOTAP_VHT_KNOWN_\fR* values\&. .RE .PP netdev_features .RS 4 netdev features to be set in each netdev created from this HW\&. Note that not all features are usable with mac80211, other features will be rejected during HW registration\&. .RE .PP uapsd_queues .RS 4 This bitmap is included in (re)association frame to indicate for each access category if it is uAPSD trigger\-enabled and delivery\- enabled\&. Use IEEE80211_WMM_IE_STA_QOSINFO_AC_* to set this bitmap\&. Each bit corresponds to different AC\&. Value \*(Aq1\*(Aq in specific bit means that corresponding AC is both trigger\- and delivery\-enabled\&. \*(Aq0\*(Aq means neither enabled\&. .RE .PP uapsd_max_sp_len .RS 4 maximum number of total buffered frames the WMM AP may deliver to a WMM STA during any Service Period triggered by the WMM STA\&. Use IEEE80211_WMM_IE_STA_QOSINFO_SP_* for correct values\&. .RE .PP n_cipher_schemes .RS 4 a size of an array of cipher schemes definitions\&. .RE .PP cipher_schemes .RS 4 a pointer to an array of cipher scheme definitions supported by HW\&. .RE .SH "DESCRIPTION" .PP .PP This structure contains the configuration and hardware information for an 802\&.11 PHY\&. .SH "AUTHOR" .PP \fBJohannes Berg\fR <\&johannes@sipsolutions.net\&> .RS 4 Author. .RE .SH "COPYRIGHT" .br