summaryrefslogtreecommitdiff
path: root/include/net
diff options
context:
space:
mode:
authorEmmanuel Grumbach <emmanuel.grumbach@intel.com>2014-05-18 07:15:24 (GMT)
committerJohannes Berg <johannes.berg@intel.com>2014-05-22 07:58:49 (GMT)
commit67af9811539be83dbdc0739215d29af23c870405 (patch)
tree737b3e00be1c18e1c21c34eed17606d3839c5ed5 /include/net
parent4d3df547e836f9a75b8de2b788449823c8db1d6a (diff)
downloadlinux-67af9811539be83dbdc0739215d29af23c870405.tar.xz
cfg80211: allow RSSI compensation
Channels in 2.4GHz band overlap, this means that if we send a probe request on channel 1 and then move to channel 2, we will hear the probe response on channel 2. In this case, the RSSI will be lower than if we had heard it on the channel on which it was sent (1 in this case). The firmware / low level driver can parse the channel in the DS IE or HT IE and compensate the RSSI so that it will still have a valid value even if we heard the frame on an adjacent channel. This can be done up to a certain offset. Add this offset as a configuration for the low level driver. A low level driver that can compensate the low RSSI in this case should assign the maximal offset for which the RSSI value is still valid. Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'include/net')
-rw-r--r--include/net/cfg80211.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/include/net/cfg80211.h b/include/net/cfg80211.h
index a75fabd..920ec8c 100644
--- a/include/net/cfg80211.h
+++ b/include/net/cfg80211.h
@@ -2961,6 +2961,12 @@ struct wiphy_vendor_command {
* and probe responses. This value should be set if the driver
* wishes to limit the number of csa counters. Default (0) means
* infinite.
+ * @max_adj_channel_rssi_comp: max offset of between the channel on which the
+ * frame was sent and the channel on which the frame was heard for which
+ * the reported rssi is still valid. If a driver is able to compensate the
+ * low rssi when a frame is heard on different channel, then it should set
+ * this variable to the maximal offset for which it can compensate.
+ * This value should be set in MHz.
*/
struct wiphy {
/* assign these fields before you register the wiphy */
@@ -3079,6 +3085,7 @@ struct wiphy {
u16 max_ap_assoc_sta;
u8 max_num_csa_counters;
+ u8 max_adj_channel_rssi_comp;
char priv[0] __aligned(NETDEV_ALIGN);
};