All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 00/13] rtw89: support channel context
@ 2022-06-23  3:46 Ping-Ke Shih
  2022-06-23  3:46 ` [PATCH v2 01/13] rtw89: rewrite decision on channel by entity state Ping-Ke Shih
                   ` (12 more replies)
  0 siblings, 13 replies; 14+ messages in thread
From: Ping-Ke Shih @ 2022-06-23  3:46 UTC (permalink / raw)
  To: kvalo; +Cc: kevin_yang, linux-wireless

In order to support multiple channels, we prepare this patchset to have
initial skeleton of channel context, and only SCC (single channel
concurrence) is supported for now.

The channel context needs some features, like hardware scan, but not all
chips can support these features, so this implement can still support
chips without channel context. The chip_info defines a support_chanctx_num
field to discriminate a chip can support channel context or not, and we
use this as clue to hook channel context ops of mac80211.

We add a module parameter rtw89_use_chanctx to enable channel context,
but by default set rtw89_use_chanctx=0 to pevent to break users' setup.
When users want channel context to support concurrency, set module
parameter rtw89_use_chanctx=1. If a chip declare it can support channel
context and proper firmware with hardware scan is adopted, it can run with
channel context. Otherwise, it could be failed to probe, users should
set rtw89_use_chanctx=0 or upgrade firmware.

When we concentrate stuffs of channel, some patches with a lot of changes
are used to adjust code for new struct. But, not really change logic.

v2:
 - patch 11/13: add link_id argument because ieee80211 ops prototype are
   changed.
 - patch 13/13: change to use module parameter rtw89_use_chanctx to prevent
   breaking users' setup by default, and users can try to use channel
   context after they upgrade firmware.

Zong-Zhe Yang (13):
  rtw89: rewrite decision on channel by entity state
  rtw89: introduce rtw89_chan for channel stuffs
  rtw89: re-arrange channel related stuffs under HAL
  rtw89: create rtw89_chan centrally to avoid breakage
  rtw89: txpwr: concentrate channel related control to top
  rtw89: rfk: concentrate parameter control while set_channel()
  rtw89: concentrate parameter control for setting channel callback
  rtw89: concentrate chandef setting to stack callback
  rtw89: initialize entity and configure default chandef
  rtw89: introduce entity mode and its recalculated prototype
  rtw89: add skeleton of mac80211 chanctx ops support
  rtw89: support mac80211 chanctx ops by chip
  rtw89: ensure chanctx ops are used with HW scan

 drivers/net/wireless/realtek/rtw89/Makefile   |   1 +
 drivers/net/wireless/realtek/rtw89/chan.c     | 237 ++++++++++++++++
 drivers/net/wireless/realtek/rtw89/chan.h     |  66 +++++
 drivers/net/wireless/realtek/rtw89/coex.c     |  11 +-
 drivers/net/wireless/realtek/rtw89/coex.h     |   4 +-
 drivers/net/wireless/realtek/rtw89/core.c     | 260 +++++++++--------
 drivers/net/wireless/realtek/rtw89/core.h     | 149 +++++++---
 drivers/net/wireless/realtek/rtw89/debug.c    |   3 +-
 drivers/net/wireless/realtek/rtw89/fw.c       |  84 ++++--
 drivers/net/wireless/realtek/rtw89/mac.c      |  14 +-
 drivers/net/wireless/realtek/rtw89/mac80211.c |  77 ++++-
 drivers/net/wireless/realtek/rtw89/pci.c      |  11 +-
 drivers/net/wireless/realtek/rtw89/phy.c      | 266 +++++++++++-------
 drivers/net/wireless/realtek/rtw89/phy.h      |   8 +-
 drivers/net/wireless/realtek/rtw89/regd.c     |   2 +-
 drivers/net/wireless/realtek/rtw89/rtw8852a.c | 111 +++++---
 .../net/wireless/realtek/rtw89/rtw8852a_rfk.c |  77 +++--
 drivers/net/wireless/realtek/rtw89/rtw8852c.c | 231 ++++++++-------
 .../net/wireless/realtek/rtw89/rtw8852c_rfk.c |  73 +++--
 .../net/wireless/realtek/rtw89/rtw8852c_rfk.h |   2 +-
 drivers/net/wireless/realtek/rtw89/sar.c      |   8 +-
 drivers/net/wireless/realtek/rtw89/ser.c      |   2 +
 22 files changed, 1171 insertions(+), 526 deletions(-)
 create mode 100644 drivers/net/wireless/realtek/rtw89/chan.c
 create mode 100644 drivers/net/wireless/realtek/rtw89/chan.h

-- 
2.25.1


^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2022-06-23  4:46 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-06-23  3:46 [PATCH v2 00/13] rtw89: support channel context Ping-Ke Shih
2022-06-23  3:46 ` [PATCH v2 01/13] rtw89: rewrite decision on channel by entity state Ping-Ke Shih
2022-06-23  3:46 ` [PATCH v2 02/13] rtw89: introduce rtw89_chan for channel stuffs Ping-Ke Shih
2022-06-23  3:46 ` [PATCH v2 03/13] rtw89: re-arrange channel related stuffs under HAL Ping-Ke Shih
2022-06-23  3:46 ` [PATCH v2 04/13] rtw89: create rtw89_chan centrally to avoid breakage Ping-Ke Shih
2022-06-23  3:46 ` [PATCH v2 05/13] rtw89: txpwr: concentrate channel related control to top Ping-Ke Shih
2022-06-23  3:46 ` [PATCH v2 06/13] rtw89: rfk: concentrate parameter control while set_channel() Ping-Ke Shih
2022-06-23  3:46 ` [PATCH v2 07/13] rtw89: concentrate parameter control for setting channel callback Ping-Ke Shih
2022-06-23  3:46 ` [PATCH v2 08/13] rtw89: concentrate chandef setting to stack callback Ping-Ke Shih
2022-06-23  3:46 ` [PATCH v2 09/13] rtw89: initialize entity and configure default chandef Ping-Ke Shih
2022-06-23  3:46 ` [PATCH v2 10/13] rtw89: introduce entity mode and its recalculated prototype Ping-Ke Shih
2022-06-23  3:46 ` [PATCH v2 11/13] rtw89: add skeleton of mac80211 chanctx ops support Ping-Ke Shih
2022-06-23  3:46 ` [PATCH v2 12/13] rtw89: support mac80211 chanctx ops by chip Ping-Ke Shih
2022-06-23  3:46 ` [PATCH v2 13/13] rtw89: ensure chanctx ops are used with HW scan Ping-Ke Shih

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.