mbox series

[00/11] wifi: rtw89: 8922a: add firmware RF calibrations

Message ID 20240202030642.108385-1-pkshih@realtek.com
Headers show
Series wifi: rtw89: 8922a: add firmware RF calibrations | expand

Message

Ping-Ke Shih Feb. 2, 2024, 3:06 a.m. UTC
For WiFi 7 chips, we move RF calibrations from driver to firmware. Driver
must trigger them one by one, so add H2C commands to trigger each of them,
and add a C2H event to know the result.

Because H2C commands and C2H event go via PCI ring, we should trigger them
after PCI enabled, so add a chip_ops::rfk_init_late for this purpose.

Ping-Ke Shih (11):
  wifi: rtw89: rfk: add a completion to wait RF calibration report from
    C2H event
  wifi: rtw89: rfk: send channel information to firmware for RF
    calibrations
  wifi: rtw89: rfk: add H2C command to trigger IQK
  wifi: rtw89: rfk: add H2C command to trigger RX DCK
  wifi: rtw89: rfk: add H2C command to trigger DPK
  wifi: rtw89: rfk: add H2C command to trigger DACK
  wifi: rtw89: rfk: add H2C command to trigger TXGAPK
  wifi: rtw89: rfk: add H2C command to trigger TSSI
  wifi: rtw89: 8922a: rfk: implement chip_ops to call RF calibrations
  wifi: rtw89: 8922a: add chip_ops::rfk_init_late to do initial RF
    calibrations later
  wifi: rtw89: 8922a: add chip_ops::rfk_hw_init

 drivers/net/wireless/realtek/rtw89/coex.h     |   1 +
 drivers/net/wireless/realtek/rtw89/core.c     |   2 +
 drivers/net/wireless/realtek/rtw89/core.h     |  51 +-
 drivers/net/wireless/realtek/rtw89/fw.c       | 322 ++++++++
 drivers/net/wireless/realtek/rtw89/fw.h       | 134 +++
 drivers/net/wireless/realtek/rtw89/mac.h      |   2 +
 drivers/net/wireless/realtek/rtw89/phy.c      | 775 ++++++++++++++++++
 drivers/net/wireless/realtek/rtw89/phy.h      |  30 +
 drivers/net/wireless/realtek/rtw89/reg.h      |   8 +
 drivers/net/wireless/realtek/rtw89/rtw8851b.c |   2 +
 drivers/net/wireless/realtek/rtw89/rtw8852a.c |   2 +
 drivers/net/wireless/realtek/rtw89/rtw8852b.c |   2 +
 drivers/net/wireless/realtek/rtw89/rtw8852c.c |   2 +
 drivers/net/wireless/realtek/rtw89/rtw8922a.c |  79 ++
 .../net/wireless/realtek/rtw89/rtw8922a_rfk.c | 202 +++++
 .../net/wireless/realtek/rtw89/rtw8922a_rfk.h |   1 +
 16 files changed, 1611 insertions(+), 4 deletions(-)