Search Linux Wireless

[RFC 00/14] mesh powersave - basics

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

 



The following commits cover the basic subset of functions, that each mesh node
must support to communicate in the presence of power saving nodes.
The current patchset does not implement any actual power savings yet (no
hardware configuration, no doze state).

Mesh powersave is different from client mode powersave in the sense that
1) there is not just a singular power mode towards the access point, but a
   link-specific power mode towards each peer instead
2) peers also maintain a power mode towards us (the local STA)
3) each node has to buffer frames towards power saving neighbors

With that said the different commits cover the following main topics:
4:  maintaining a local power mode for each peer + one non-peer power mode
5:  indicate the power mode towards the respective neighbors
6:  track neighbors' power modes 
10: buffer frames towards power saving neighbors
14: release buffered frames in coordination with neighbor

Marco Porsch (14):
  {nl,cfg,mac}80211: add beacon interval and DTIM period to mesh config
  {cfg,nl}80211: mesh power mode config parameters
  {cfg,nl}80211: set and get default mesh power mode
  mac80211: local link-specific mesh power mode logic
  mac80211: mesh power mode indication in transmitted frames
  mac80211: track neighbor STA power modes
  {cfg,nl}80211: set local link-specific power mode
  {cfg,nl}80211: get local and peer mesh power modes
  mac80211: add power save support structure to mesh interface
  mac80211: enable frame buffering for PS STA
  {cfg,nl}80211: add awake window to mesh config
  mac80211: add awake window IE to mesh beacons
  mac80211: add TIM IE to mesh beacons
  mac80211: mesh PS individually-addressed frame release

 include/linux/ieee80211.h     |   14 +
 include/net/cfg80211.h        |   24 ++
 include/uapi/linux/nl80211.h  |   55 ++++
 net/mac80211/Kconfig          |   11 +
 net/mac80211/Makefile         |    3 +-
 net/mac80211/cfg.c            |   33 ++-
 net/mac80211/debug.h          |   10 +
 net/mac80211/debugfs_netdev.c |    9 +
 net/mac80211/debugfs_sta.c    |    5 +-
 net/mac80211/ieee80211_i.h    |    7 +
 net/mac80211/iface.c          |    3 +
 net/mac80211/mesh.c           |   34 ++-
 net/mac80211/mesh.h           |   26 +-
 net/mac80211/mesh_hwmp.c      |   10 +
 net/mac80211/mesh_pathtbl.c   |    1 +
 net/mac80211/mesh_plink.c     |   39 +++
 net/mac80211/mesh_ps.c        |  578 +++++++++++++++++++++++++++++++++++++++++
 net/mac80211/rx.c             |   32 ++-
 net/mac80211/sta_info.c       |   28 +-
 net/mac80211/sta_info.h       |   18 ++
 net/mac80211/status.c         |    5 +
 net/mac80211/tx.c             |   62 ++++-
 net/mac80211/util.c           |    4 +
 net/mac80211/wme.c            |   15 +-
 net/wireless/mesh.c           |    8 +
 net/wireless/nl80211.c        |   46 +++-
 26 files changed, 1054 insertions(+), 26 deletions(-)
 create mode 100644 net/mac80211/mesh_ps.c

-- 
1.7.9.5

--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


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

  Powered by Linux