Search Linux Wireless

[PATCH 0/2] wifi: mac80211: Radar bitmap support during radar detection

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



With the current implementation when radar is detected, the whole
configured DFS channels are moved to "unavailable" state(NOL).
However to move only the radar affected channels alone to NOL,
introducing two unsigned 16bit variables "cf1_radar_bitmap" and
"cf2_radar_bitmap" which denotes the radar(with a granularity of
20 MHz) in the first and the second part of the channel respectively.
The "cf2_radar_bitmap" value will be valid only when the
"center_freq2" is available.

The LSB of the radar bitmap corresponds to the lowest 20 MHz channel
of the configured channel bandwidth. Each bit set to "1" in this radar
bitmap indicates that radar is detected in that sub-channel. Based
on this radar bitmap the radar affected channels alone will be moved
to NOL. Advertise these radar bitmaps using new NL attributes
"NL80211_ATTR_CF1_RADAR_BITMAP" and "NL80211_ATTR_CF2_RADAR_BITMAP"
with the existing "NL80211_CMD_RADAR_DETECT". Once these are
advertised and the needed dfs state propagation is done, reset these
radar bitmap values as they are not valid until there is another
radar detection.

With these radar bitmaps, we can support bandwidth reduction and
RX puncturing in the DFS Channels.

Nagarajan Maran (2):
  wifi: cfg80211: DFS radar detection support with radar bitmap
  wifi: mac80211: radar bitmap support during radar detection.

 drivers/net/wireless/ath/ath10k/debug.c       |  2 +-
 drivers/net/wireless/ath/ath10k/mac.c         |  2 +-
 drivers/net/wireless/ath/ath10k/wmi.c         |  2 +-
 drivers/net/wireless/ath/ath11k/wmi.c         |  2 +-
 drivers/net/wireless/ath/ath12k/wmi.c         |  2 +-
 drivers/net/wireless/ath/ath9k/dfs.c          |  2 +-
 drivers/net/wireless/ath/ath9k/dfs_debug.c    |  2 +-
 drivers/net/wireless/mac80211_hwsim.c         |  2 +-
 .../net/wireless/mediatek/mt76/mt7615/mcu.c   |  2 +-
 .../net/wireless/mediatek/mt76/mt76x02_dfs.c  |  4 ++--
 .../net/wireless/mediatek/mt76/mt7915/mcu.c   |  2 +-
 .../net/wireless/mediatek/mt76/mt7996/mcu.c   |  2 +-
 drivers/net/wireless/ti/wl18xx/event.c        |  2 +-
 include/net/cfg80211.h                        |  6 +++++
 include/net/mac80211.h                        |  5 +++-
 include/uapi/linux/nl80211.h                  | 11 +++++++++
 net/mac80211/ieee80211_i.h                    |  2 ++
 net/mac80211/util.c                           | 10 +++++++-
 net/wireless/chan.c                           | 24 ++++++++++++-------
 net/wireless/mlme.c                           |  4 ++++
 net/wireless/nl80211.c                        | 11 +++++++++
 net/wireless/reg.c                            |  3 +++
 22 files changed, 80 insertions(+), 24 deletions(-)


base-commit: 58e4b9df840cad439a4c878f81bc105cac2197a7
-- 
2.17.1




[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Wireless Regulations]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux