aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/net/mac80211.h21
1 files changed, 20 insertions, 1 deletions
diff --git a/include/net/mac80211.h b/include/net/mac80211.h
index f7eba1300d82..9b0d342c0675 100644
--- a/include/net/mac80211.h
+++ b/include/net/mac80211.h
@@ -2135,6 +2135,24 @@ enum ieee80211_rate_control_changed {
2135}; 2135};
2136 2136
2137/** 2137/**
2138 * enum ieee80211_roc_type - remain on channel type
2139 *
2140 * With the support for multi channel contexts and multi channel operations,
2141 * remain on channel operations might be limited/deferred/aborted by other
2142 * flows/operations which have higher priority (and vise versa).
2143 * Specifying the ROC type can be used by devices to prioritize the ROC
2144 * operations compared to other operations/flows.
2145 *
2146 * @IEEE80211_ROC_TYPE_NORMAL: There are no special requirements for this ROC.
2147 * @IEEE80211_ROC_TYPE_MGMT_TX: The remain on channel request is required
2148 * for sending managment frames offchannel.
2149 */
2150enum ieee80211_roc_type {
2151 IEEE80211_ROC_TYPE_NORMAL = 0,
2152 IEEE80211_ROC_TYPE_MGMT_TX,
2153};
2154
2155/**
2138 * struct ieee80211_ops - callbacks from mac80211 to the driver 2156 * struct ieee80211_ops - callbacks from mac80211 to the driver
2139 * 2157 *
2140 * This structure contains various callbacks that the driver may 2158 * This structure contains various callbacks that the driver may
@@ -2687,7 +2705,8 @@ struct ieee80211_ops {
2687 int (*remain_on_channel)(struct ieee80211_hw *hw, 2705 int (*remain_on_channel)(struct ieee80211_hw *hw,
2688 struct ieee80211_vif *vif, 2706 struct ieee80211_vif *vif,
2689 struct ieee80211_channel *chan, 2707 struct ieee80211_channel *chan,
2690 int duration); 2708 int duration,
2709 enum ieee80211_roc_type type);
2691 int (*cancel_remain_on_channel)(struct ieee80211_hw *hw); 2710 int (*cancel_remain_on_channel)(struct ieee80211_hw *hw);
2692 int (*set_ringparam)(struct ieee80211_hw *hw, u32 tx, u32 rx); 2711 int (*set_ringparam)(struct ieee80211_hw *hw, u32 tx, u32 rx);
2693 void (*get_ringparam)(struct ieee80211_hw *hw, 2712 void (*get_ringparam)(struct ieee80211_hw *hw,