1ENUM IEEE80211_HW_FL(9) The basic mac80211 driver inte ENUM IEEE80211_HW_FL(9)
2
3
4

NAME

6       enum_ieee80211_hw_flags - hardware flags
7

SYNOPSIS

9       enum ieee80211_hw_flags {
10         IEEE80211_HW_HAS_RATE_CONTROL,
11         IEEE80211_HW_RX_INCLUDES_FCS,
12         IEEE80211_HW_HOST_BROADCAST_PS_BUFFERING,
13         IEEE80211_HW_SIGNAL_UNSPEC,
14         IEEE80211_HW_SIGNAL_DBM,
15         IEEE80211_HW_NEED_DTIM_BEFORE_ASSOC,
16         IEEE80211_HW_SPECTRUM_MGMT,
17         IEEE80211_HW_AMPDU_AGGREGATION,
18         IEEE80211_HW_SUPPORTS_PS,
19         IEEE80211_HW_PS_NULLFUNC_STACK,
20         IEEE80211_HW_SUPPORTS_DYNAMIC_PS,
21         IEEE80211_HW_MFP_CAPABLE,
22         IEEE80211_HW_WANT_MONITOR_VIF,
23         IEEE80211_HW_NO_AUTO_VIF,
24         IEEE80211_HW_SW_CRYPTO_CONTROL,
25         IEEE80211_HW_SUPPORT_FAST_XMIT,
26         IEEE80211_HW_REPORTS_TX_ACK_STATUS,
27         IEEE80211_HW_CONNECTION_MONITOR,
28         IEEE80211_HW_QUEUE_CONTROL,
29         IEEE80211_HW_SUPPORTS_PER_STA_GTK,
30         IEEE80211_HW_AP_LINK_PS,
31         IEEE80211_HW_TX_AMPDU_SETUP_IN_HW,
32         IEEE80211_HW_SUPPORTS_RC_TABLE,
33         IEEE80211_HW_P2P_DEV_ADDR_FOR_INTF,
34         IEEE80211_HW_TIMING_BEACON_ONLY,
35         IEEE80211_HW_SUPPORTS_HT_CCK_RATES,
36         IEEE80211_HW_CHANCTX_STA_CSA,
37         IEEE80211_HW_SUPPORTS_CLONED_SKBS,
38         IEEE80211_HW_SINGLE_SCAN_ON_ALL_BANDS,
39         IEEE80211_HW_TDLS_WIDER_BW,
40         NUM_IEEE80211_HW_FLAGS
41       };
42

CONSTANTS

44       IEEE80211_HW_HAS_RATE_CONTROL
45           The hardware or firmware includes rate control, and cannot be
46           controlled by the stack. As such, no rate control algorithm should
47           be instantiated, and the TX rate reported to userspace will be
48           taken from the TX status instead of the rate control algorithm.
49           Note that this requires that the driver implement a number of
50           callbacks so it has the correct information, it needs to have the
51           set_rts_threshold callback and must look at the BSS config
52           use_cts_prot for G/N protection, use_short_slot for slot timing in
53           2.4 GHz and use_short_preamble for preambles for CCK frames.
54
55       IEEE80211_HW_RX_INCLUDES_FCS
56           Indicates that received frames passed to the stack include the FCS
57           at the end.
58
59       IEEE80211_HW_HOST_BROADCAST_PS_BUFFERING
60           Some wireless LAN chipsets buffer broadcast/multicast frames for
61           power saving stations in the hardware/firmware and others rely on
62           the host system for such buffering. This option is used to
63           configure the IEEE 802.11 upper layer to buffer broadcast and
64           multicast frames when there are power saving stations so that the
65           driver can fetch them with ieee80211_get_buffered_bc.
66
67       IEEE80211_HW_SIGNAL_UNSPEC
68           Hardware can provide signal values but we don´t know its units. We
69           expect values between 0 and max_signal. If possible please provide
70           dB or dBm instead.
71
72       IEEE80211_HW_SIGNAL_DBM
73           Hardware gives signal values in dBm, decibel difference from one
74           milliwatt. This is the preferred method since it is standardized
75           between different devices.  max_signal does not need to be set.
76
77       IEEE80211_HW_NEED_DTIM_BEFORE_ASSOC
78           This device needs to get data from beacon before association (i.e.
79           dtim_period).
80
81       IEEE80211_HW_SPECTRUM_MGMT
82           Hardware supports spectrum management defined in 802.11h
83           Measurement, Channel Switch, Quieting, TPC
84
85       IEEE80211_HW_AMPDU_AGGREGATION
86           Hardware supports 11n A-MPDU aggregation.
87
88       IEEE80211_HW_SUPPORTS_PS
89           Hardware has power save support (i.e. can go to sleep).
90
91       IEEE80211_HW_PS_NULLFUNC_STACK
92           Hardware requires nullfunc frame handling in stack, implies stack
93           support for dynamic PS.
94
95       IEEE80211_HW_SUPPORTS_DYNAMIC_PS
96           Hardware has support for dynamic PS.
97
98       IEEE80211_HW_MFP_CAPABLE
99           Hardware supports management frame protection (MFP, IEEE 802.11w).
100
101       IEEE80211_HW_WANT_MONITOR_VIF
102           The driver would like to be informed of a virtual monitor interface
103           when monitor interfaces are the only active interfaces.
104
105       IEEE80211_HW_NO_AUTO_VIF
106           The driver would like for no wlanX to be created. It is expected
107           user-space will create vifs as desired (and thus have them named as
108           desired).
109
110       IEEE80211_HW_SW_CRYPTO_CONTROL
111           The driver wants to control which of the crypto algorithms can be
112           done in software - so don´t automatically try to fall back to it if
113           hardware crypto fails, but do so only if the driver returns 1. This
114           also forces the driver to advertise its supported cipher suites.
115
116       IEEE80211_HW_SUPPORT_FAST_XMIT
117           The driver/hardware supports fast-xmit, this currently requires
118           only the ability to calculate the duration for frames.
119
120       IEEE80211_HW_REPORTS_TX_ACK_STATUS
121           Hardware can provide ack status reports of Tx frames to the stack.
122
123       IEEE80211_HW_CONNECTION_MONITOR
124           The hardware performs its own connection monitoring, including
125           periodic keep-alives to the AP and probing the AP on beacon loss.
126
127       IEEE80211_HW_QUEUE_CONTROL
128           The driver wants to control per-interface queue mapping in order to
129           use different queues (not just one per AC) for different virtual
130           interfaces. See the doc section on HW queue control for more
131           details.
132
133       IEEE80211_HW_SUPPORTS_PER_STA_GTK
134           The device´s crypto engine supports per-station GTKs as used by
135           IBSS RSN or during fast transition. If the device doesn´t support
136           per-station GTKs, but can be asked not to decrypt group addressed
137           frames, then IBSS RSN support is still possible but software crypto
138           will be used. Advertise the wiphy flag only in that case.
139
140       IEEE80211_HW_AP_LINK_PS
141           When operating in AP mode the device autonomously manages the PS
142           status of connected stations. When this flag is set mac80211 will
143           not trigger PS mode for connected stations based on the PM bit of
144           incoming frames. Use ieee80211_start_ps/ieee8021_end_ps to manually
145           configure the PS mode of connected stations.
146
147       IEEE80211_HW_TX_AMPDU_SETUP_IN_HW
148           The device handles TX A-MPDU session setup strictly in HW. mac80211
149           should not attempt to do this in software.
150
151       IEEE80211_HW_SUPPORTS_RC_TABLE
152           The driver supports using a rate selection table provided by the
153           rate control algorithm.
154
155       IEEE80211_HW_P2P_DEV_ADDR_FOR_INTF
156           Use the P2P Device address for any P2P Interface. This will be
157           honoured even if more than one interface is supported.
158
159       IEEE80211_HW_TIMING_BEACON_ONLY
160           Use sync timing from beacon frames only, to allow getting TBTT of a
161           DTIM beacon.
162
163       IEEE80211_HW_SUPPORTS_HT_CCK_RATES
164           Hardware supports mixing HT/CCK rates and can cope with CCK rates
165           in an aggregation session (e.g. by not using aggregation for such
166           frames.)
167
168       IEEE80211_HW_CHANCTX_STA_CSA
169           Support 802.11h based channel-switch (CSA) for a single active
170           channel while using channel contexts. When support is not enabled
171           the default action is to disconnect when getting the CSA frame.
172
173       IEEE80211_HW_SUPPORTS_CLONED_SKBS
174           The driver will never modify the payload or tailroom of TX skbs
175           without copying them first.
176
177       IEEE80211_HW_SINGLE_SCAN_ON_ALL_BANDS
178           The HW supports scanning on all bands in one command, mac80211
179           doesn´t have to run separate scans per band.
180
181       IEEE80211_HW_TDLS_WIDER_BW
182           The device/driver supports wider bandwidth than then BSS bandwidth
183           for a TDLS link on the base channel.
184
185       NUM_IEEE80211_HW_FLAGS
186           number of hardware flags, used for sizing arrays
187

DESCRIPTION

189       These flags are used to indicate hardware capabilities to the stack.
190       Generally, flags here should have their meaning done in a way that the
191       simplest hardware doesn´t need setting any particular flags. There are
192       some exceptions to this rule, however, so you are advised to review
193       these flags carefully.
194

AUTHOR

196       Johannes Berg <johannes@sipsolutions.net>
197           Author.
198
200Kernel Hackers Manual 2.6.         June 2019           ENUM IEEE80211_HW_FL(9)
Impressum