Message ID | 1488540807-27415-2-git-send-email-mpubbise@qti.qualcomm.com (mailing list archive) |
---|---|
State | RFC |
Delegated to: | Johannes Berg |
Headers | show |
On Fri, 2017-03-03 at 17:03 +0530, mpubbise@qti.qualcomm.com wrote: > From: Vasanthakumar Thiagarajan <vthiagar@qti.qualcomm.com> > > Drivers can have the capability to offload 802.11 encap > to firmware or hardware for data frames. This patch adds a new > hw_flag for driver to advertise the offload support. > Transmit path offloading 802.11 header (including cipher headers) > encap for data frames will be implemented in a separate patch. > > Drivers advertising this capability should also implement other > functionalities which deal with 802.11 frame format like below > > - Hardware encryption > - Aggregation of A-MSDU offload > - Fragmentation offload Not much point in having this as a separate patch, but this documentation paragraph should move into the documentation for the new flag in mac80211.h johannes
>> Drivers can have the capability to offload 802.11 encap to firmware or >> hardware for data frames. This patch adds a new hw_flag for driver to >> advertise the offload support. >> Transmit path offloading 802.11 header (including cipher headers) >> encap for data frames will be implemented in a separate patch. >> >> Drivers advertising this capability should also implement other >> functionalities which deal with 802.11 frame format like below >> >> - Hardware encryption >> - Aggregation of A-MSDU offload >> - Fragmentation offload > >Not much point in having this as a separate patch, but this documentation >paragraph should move into the documentation for the new flag in >mac80211.h [Manikanta] Sure. -- Manikanta
diff --git a/include/net/mac80211.h b/include/net/mac80211.h index 3edb469..0239b7d 100644 --- a/include/net/mac80211.h +++ b/include/net/mac80211.h @@ -2049,6 +2049,9 @@ struct ieee80211_txq { * The stack will not do fragmentation. * The callback for @set_frag_threshold should be set as well. * + * @IEEE80211_HW_SUPPORTS_80211_ENCAP: Hardware/driver supports 802.11 + * encap for data frames. + * * @NUM_IEEE80211_HW_FLAGS: number of hardware flags, used for sizing arrays */ enum ieee80211_hw_flags { @@ -2091,6 +2094,7 @@ enum ieee80211_hw_flags { IEEE80211_HW_TX_FRAG_LIST, IEEE80211_HW_REPORTS_LOW_ACK, IEEE80211_HW_SUPPORTS_TX_FRAG, + IEEE80211_HW_SUPPORTS_80211_ENCAP, /* keep last, obviously */ NUM_IEEE80211_HW_FLAGS diff --git a/net/mac80211/debugfs.c b/net/mac80211/debugfs.c index 5fae001..b97ffb4 100644 --- a/net/mac80211/debugfs.c +++ b/net/mac80211/debugfs.c @@ -211,6 +211,7 @@ static ssize_t reset_write(struct file *file, const char __user *user_buf, FLAG(TX_FRAG_LIST), FLAG(REPORTS_LOW_ACK), FLAG(SUPPORTS_TX_FRAG), + FLAG(SUPPORTS_80211_ENCAP), #undef FLAG };