mbox series

[0/8] wifi: rtw89: adjust RFK and monitor states for MCC

Message ID 20230908031145.20931-1-pkshih@realtek.com
Headers show
Series wifi: rtw89: adjust RFK and monitor states for MCC | expand

Message

Ping-Ke Shih Sept. 8, 2023, 3:11 a.m. UTC
This is third patchset to prepare more materials for MCC. It includes
group 6/7 patches below that aims to adjust RFK (RF calibrations) behavior
to fit MCC situation and add a track work to monitor states including
MAC ID bitmap of connected stations, beacon offset, P2P PS, and BT timeslot.

<<< Below commit message is kept as first patchset for reference >>>

TDMA-based MCC (STA+P2P) is a kind of multiple interfaces concurrence.
Basically, driver is to calculate timeslot pattern and firmware follows
the pattern to switch channels. Since BT-coexistence is also a TDMA-based
mechanism, also consider BT timeslot into pattern if BT devices present.
 
To easier to review these 20+ patches, I summary basic purpose of these
patches below by group, and submit them by small patchset one by one.
 
Group 1. [DONE] get BT timeslot from coex mechanism
Group 2. [DONE] adjust some stuff related to driver channel context
Group 3. [DONE] P2P NoA infrastructure to add the IE to beacon when playing GO
Group 4. [DONE] adjust driver to support 2 channel context
Group 5. [DONE] calculate timeslot patterns and trigger firmware to switch
                   channels followed the patterns
Group 6. [CURRENT] disable some dynamic tracking mechanism of RF calibration when
                   MCC is running.
Group 7. [CURRENT] monitor states and adjust timeslot patterns. For example, if
                   BT device leaves, we can reassign the slot to WiFi.
Group 8. Remain-on-channel and hardware scan are related to channel
         context, so need some treatments to work with MCC properly.
Group 9. Finally, we declare 8852C to support MCC

Zong-Zhe Yang (8):
  wifi: rtw89: 52c: rfk: refine MCC channel info notification
  wifi: rtw89: rfk: disable driver tracking during MCC
  wifi: rtw89: 52c: rfk: disable DPK during MCC
  wifi: rtw89: mcc: update role bitmap when changed
  wifi: rtw89: mcc: track beacon offset and update when needed
  wifi: rtw89: mcc: deal with P2P PS change
  wifi: rtw89: mcc: deal with BT slot change
  wifi: rtw89: mcc: deal with beacon NoA if GO exists

 drivers/net/wireless/realtek/rtw89/chan.c     | 336 +++++++++++++++++-
 drivers/net/wireless/realtek/rtw89/chan.h     |   6 +
 drivers/net/wireless/realtek/rtw89/core.c     |  29 +-
 drivers/net/wireless/realtek/rtw89/core.h     |  15 +
 drivers/net/wireless/realtek/rtw89/fw.c       |   7 +-
 drivers/net/wireless/realtek/rtw89/fw.h       |   5 +
 drivers/net/wireless/realtek/rtw89/mac.c      |   1 +
 drivers/net/wireless/realtek/rtw89/mac80211.c |   3 +-
 drivers/net/wireless/realtek/rtw89/rtw8852c.c |   7 +
 .../net/wireless/realtek/rtw89/rtw8852c_rfk.c |  84 ++++-
 .../net/wireless/realtek/rtw89/rtw8852c_rfk.h |   3 +
 11 files changed, 477 insertions(+), 19 deletions(-)