mbox series

[v2,0/4] Add AP power save support

Message ID 20230320164334.3325886-1-quic_mkenna@quicinc.com (mailing list archive)
Headers show
Series Add AP power save support | expand

Message

Maharaja Kennadyrajan March 20, 2023, 4:43 p.m. UTC
AP power save feature is enabled when the driver and hardware
supports. If the driver suppots this feature then driver will
advertise this flag SUPPORTS_AP_PS to enable the AP power save
in mac80211.

AP goes into the power save mode, if no stations are connected
and it will come out of power save as and when any of the station
associate to it. Also, during the power save tx chain mask is
reduced to 1x1 until the any station connects with more than
1x1 chain mask.

Rename NL80211_CMD_SET_BEACON to  NL80211_UPDATE_AP to make use
of this command to configure more AP parameters which can vary
at the run time of the BSS like AP power save config.

A new nl80211 attribute NL80211_ATTR_AP_PS is introduced for
this AP power save configuration from user space which is used
along with the NL80211_CMD_UPDATE_AP.

Venkateswara Naralasetty (4):
  wifi: nl80211: rename NL80211_CMD_SET_BEACON to NL80211_CMD_UDPATE_AP
  wifi: nl80211: add configuration support for ap power save
  wifi: mac80211: notify BSS change upon AP power save change
  wifi: ath11k: add AP power save support

v2: Updated the commit log in patch 4.

 drivers/net/wireless/ath/ath11k/core.c        |  8 +++
 drivers/net/wireless/ath/ath11k/core.h        |  8 +++
 drivers/net/wireless/ath/ath11k/hw.h          |  1 +
 drivers/net/wireless/ath/ath11k/mac.c         | 58 +++++++++++++++
 drivers/net/wireless/ath/ath11k/wmi.c         | 32 +++++++++
 drivers/net/wireless/ath/ath11k/wmi.h         |  8 +++
 drivers/net/wireless/ath/ath6kl/cfg80211.c    | 11 +--
 drivers/net/wireless/ath/wil6210/cfg80211.c   | 14 ++--
 .../broadcom/brcm80211/brcmfmac/cfg80211.c    | 11 +--
 .../net/wireless/marvell/mwifiex/cfg80211.c   | 15 ++--
 .../wireless/microchip/wilc1000/cfg80211.c    | 11 +--
 .../net/wireless/quantenna/qtnfmac/cfg80211.c | 11 +--
 .../staging/rtl8723bs/os_dep/ioctl_cfg80211.c | 12 +++-
 include/net/cfg80211.h                        | 42 +++++++++--
 include/net/mac80211.h                        |  7 +-
 include/uapi/linux/nl80211.h                  | 28 +++++---
 net/mac80211/cfg.c                            | 39 +++++++----
 net/mac80211/debugfs.c                        |  1 +
 net/wireless/nl80211.c                        | 32 ++++++---
 net/wireless/rdev-ops.h                       | 10 +--
 net/wireless/trace.h                          | 70 ++++++++++---------
 21 files changed, 327 insertions(+), 102 deletions(-)

Comments

Johannes Berg March 20, 2023, 5:04 p.m. UTC | #1
On Mon, 2023-03-20 at 22:13 +0530, Maharaja Kennadyrajan wrote:
> AP power save feature is enabled when the driver and hardware
> supports. If the driver suppots this feature then driver will
> advertise this flag SUPPORTS_AP_PS to enable the AP power save
> in mac80211.
> 
> AP goes into the power save mode, if no stations are connected
> and it will come out of power save as and when any of the station
> associate to it. Also, during the power save tx chain mask is
> reduced to 1x1 until the any station connects with more than
> 1x1 chain mask.
> 

All of that seems entirely transparent, similar to how mac80211 today
reduces bandwidth of the AP interface (min_def in a chandef) - what's
the point of doing all this infrastructure to make it configurable then?
Why not always have it, and perhaps make some debugfs to turn it off for
debugging/experiments?

johannes