mbox series

[v2,0/8] rtw88: 8723d: add basic chip functions

Message ID 20200420055054.14592-1-yhchuang@realtek.com (mailing list archive)
Headers show
Series rtw88: 8723d: add basic chip functions | expand

Message

Tony Chuang April 20, 2020, 5:50 a.m. UTC
From: Yan-Hsuan Chuang <yhchuang@realtek.com>

Add basic chip functions for new 802.11n devices RTL8723DE.

RTL8723DE is an 802.11n device, while rtw88 aimed to support
802.11ac devices, the 8723DE devices' architecture is close to
them. The PCI TRX paths are mostly the same, except that the
8723DE does not have H2CQ for sending H2C commands. And it also
uses a different way to download firmware, but it's not a big
deal, as we can add a legacy firmware download routine for it.

So, we can easily get 8723DE supported by rtw88. For easier
to review them, the 8723DE implementation is split into multiple
patches. First add the basic chip functionalities for it.

To make a new type of chip work, the chip capabilities should
be filled correctly. And it will have its own parameter tables,
including MAC/PHY and power squence tables. Note that 8723DE
introduces a slightly different way to access to the RF regs.
Beamform is not supported as well, assign NULL to them, and
check the chip_ops before we use.


v1 -> v2
  * make a patchset contains less patches for review


Ping-Ke Shih (8):
  rtw88: 8723d: Add basic chip capabilities
  rtw88: 8723d: add beamform wrapper functions
  rtw88: 8723d: Add power sequence
  rtw88: 8723d: Add RF read/write ops
  rtw88: 8723d: Add mac/bb/rf/agc/power_limit tables
  rtw88: 8723d: Add cfg_ldo25 to control LDO25
  rtw88: 8723d: Add new chip op efuse_grant() to control efuse access
  rtw88: 8723d: Add read_efuse to recognize efuse info from map

 drivers/net/wireless/realtek/rtw88/bf.c       |    7 +-
 drivers/net/wireless/realtek/rtw88/bf.h       |   22 +
 drivers/net/wireless/realtek/rtw88/efuse.c    |    4 +
 drivers/net/wireless/realtek/rtw88/mac80211.c |    7 +-
 drivers/net/wireless/realtek/rtw88/main.c     |   12 +-
 drivers/net/wireless/realtek/rtw88/main.h     |   26 +
 drivers/net/wireless/realtek/rtw88/pci.c      |    3 +
 drivers/net/wireless/realtek/rtw88/phy.c      |   56 +-
 drivers/net/wireless/realtek/rtw88/phy.h      |    6 +
 drivers/net/wireless/realtek/rtw88/reg.h      |   14 +
 drivers/net/wireless/realtek/rtw88/rtw8723d.c |  544 ++++++++
 drivers/net/wireless/realtek/rtw88/rtw8723d.h |   47 +
 .../wireless/realtek/rtw88/rtw8723d_table.c   | 1196 +++++++++++++++++
 .../wireless/realtek/rtw88/rtw8723d_table.h   |   15 +
 drivers/net/wireless/realtek/rtw88/rtw8822b.c |    2 +-
 15 files changed, 1943 insertions(+), 18 deletions(-)
 create mode 100644 drivers/net/wireless/realtek/rtw88/rtw8723d.c
 create mode 100644 drivers/net/wireless/realtek/rtw88/rtw8723d.h
 create mode 100644 drivers/net/wireless/realtek/rtw88/rtw8723d_table.c
 create mode 100644 drivers/net/wireless/realtek/rtw88/rtw8723d_table.h