enum ieee80211_hw_flags — hardware flags
enum ieee80211_hw_flags { IEEE80211_HW_HAS_RATE_CONTROL, IEEE80211_HW_RX_INCLUDES_FCS, IEEE80211_HW_HOST_BROADCAST_PS_BUFFERING, IEEE80211_HW_2GHZ_SHORT_SLOT_INCAPABLE, IEEE80211_HW_2GHZ_SHORT_PREAMBLE_INCAPABLE, IEEE80211_HW_SIGNAL_UNSPEC, IEEE80211_HW_SIGNAL_DBM, IEEE80211_HW_NEED_DTIM_PERIOD, IEEE80211_HW_SPECTRUM_MGMT, IEEE80211_HW_AMPDU_AGGREGATION, IEEE80211_HW_SUPPORTS_PS, IEEE80211_HW_PS_NULLFUNC_STACK, IEEE80211_HW_SUPPORTS_DYNAMIC_PS, IEEE80211_HW_MFP_CAPABLE, IEEE80211_HW_BEACON_FILTER, IEEE80211_HW_SUPPORTS_STATIC_SMPS, IEEE80211_HW_SUPPORTS_DYNAMIC_SMPS, IEEE80211_HW_SUPPORTS_UAPSD, IEEE80211_HW_REPORTS_TX_ACK_STATUS, IEEE80211_HW_CONNECTION_MONITOR, IEEE80211_HW_SUPPORTS_CQM_RSSI, IEEE80211_HW_SUPPORTS_PER_STA_GTK, IEEE80211_HW_AP_LINK_PS };
The hardware or firmware includes rate control, and cannot be
controlled by the stack. As such, no rate control algorithm
should be instantiated, and the TX rate reported to userspace
will be taken from the TX status instead of the rate control
algorithm.
Note that this requires that the driver implement a number of
callbacks so it has the correct information, it needs to have
the set_rts_threshold
callback and must look at the BSS config
use_cts_prot
for G/N protection, use_short_slot
for slot
timing in 2.4 GHz and use_short_preamble
for preambles for
CCK frames.
Indicates that received frames passed to the stack include the FCS at the end.
Some wireless LAN chipsets buffer broadcast/multicast frames
for power saving stations in the hardware/firmware and others
rely on the host system for such buffering. This option is used
to configure the IEEE 802.11 upper layer to buffer broadcast and
multicast frames when there are power saving stations so that
the driver can fetch them with ieee80211_get_buffered_bc
.
Hardware is not capable of short slot operation on the 2.4 GHz band.
Hardware is not capable of receiving frames with short preamble on the 2.4 GHz band.
Hardware can provide signal values but we don't know its units. We
expect values between 0 and max_signal
.
If possible please provide dB or dBm instead.
Hardware gives signal values in dBm, decibel difference from
one milliwatt. This is the preferred method since it is standardized
between different devices. max_signal
does not need to be set.
This device needs to know the DTIM period for the BSS before associating.
Hardware supports spectrum management defined in 802.11h Measurement, Channel Switch, Quieting, TPC
Hardware supports 11n A-MPDU aggregation.
Hardware has power save support (i.e. can go to sleep).
Hardware requires nullfunc frame handling in stack, implies stack support for dynamic PS.
Hardware has support for dynamic PS.
Hardware supports management frame protection (MFP, IEEE 802.11w).
Hardware supports dropping of irrelevant beacon frames to avoid waking up cpu.
Hardware supports static spatial multiplexing powersave, ie. can turn off all but one chain even on HT connections that should be using more chains.
Hardware supports dynamic spatial multiplexing powersave, ie. can turn off all but one chain and then wake the rest up as required after, for example, rts/cts handshake.
Hardware supports Unscheduled Automatic Power Save Delivery
(U-APSD) in managed mode. The mode is configured with
conf_tx
operation.
Hardware can provide ack status reports of Tx frames to the stack.
The hardware performs its own connection monitoring, including periodic keep-alives to the AP and probing the AP on beacon loss. When this flag is set, signaling beacon-loss will cause an immediate change to disassociated state.
Hardware can do connection quality monitoring - i.e. it can monitor connection quality related parameters, such as the RSSI level and provide notifications if configured trigger levels are reached.
The device's crypto engine supports per-station GTKs as used by IBSS RSN or during fast transition. If the device doesn't support per-station GTKs, but can be asked not to decrypt group addressed frames, then IBSS RSN support is still possible but software crypto will be used. Advertise the wiphy flag only in that case.
When operating in AP mode the device
autonomously manages the PS status of connected stations. When
this flag is set mac80211 will not trigger PS mode for connected
stations based on the PM bit of incoming frames.
Use ieee80211_start_ps
/ieee8021_end_ps
to manually configure
the PS mode of connected stations.
These flags are used to indicate hardware capabilities to the stack. Generally, flags here should have their meaning done in a way that the simplest hardware doesn't need setting any particular flags. There are some exceptions to this rule, however, so you are advised to review these flags carefully.