[PATCH 00/40][SRU][Lunar/OEM-6.1] Wireless: Enable RTL8852BE wifi driver

Tim Gardner tim.gardner at canonical.com
Thu Jan 12 13:36:31 UTC 2023


On 1/11/23 11:36 PM, Koba Ko wrote:
> BugLink: https://bugs.launchpad.net/bugs/2002601
> 
> [Justification]
> Enable Realtek RLT8852BE WIFI.
> 
> [Test]
> 1. put rtw8852b_fw.bin in /lib/firmware/rtw89/
> 2. boot-up with kernel enabled RTL8852be.
> 3. Connect to WIFI-AP and test with ping.
> 
> * ping -I wlp2s0 8.8.8.8
> ~~
> PING 8.8.8.8 (8.8.8.8) from 10.102.137.55 wlp2s0: 56(84) bytes of data.
> 64 bytes from 8.8.8.8: icmp_seq=1 ttl=116 time=5.86 ms
> 64 bytes from 8.8.8.8: icmp_seq=2 ttl=116 time=6.21 ms
> 64 bytes from 8.8.8.8: icmp_seq=3 ttl=116 time=18.9 ms
> 64 bytes from 8.8.8.8: icmp_seq=4 ttl=116 time=6.09 ms
> 64 bytes from 8.8.8.8: icmp_seq=5 ttl=116 time=6.13 ms
> 64 bytes from 8.8.8.8: icmp_seq=6 ttl=116 time=5.77 ms
> ~~
> * Connected to AP
> ~~
> u at ubuntu:~$ nmcli dev
> DEVICE TYPE STATE CONNECTION
> enp3s0 ethernet connected Wired connection 1
> wlp2s0 wifi connected Canonical
> p2p-dev-wlp2s0 wifi-p2p disconnected --
> lo loopback unmanaged --
> ~~
> * lsmod | grep 8852
> ~~
> lsmod | grep 8852
> rtw89_8852be 16384 0
> rtw89_8852b 368640 1 rtw89_8852be
> rtw89_pci 61440 1 rtw89_8852be
> rtw89_core 442368 2 rtw89_8852b,rtw89_pci
> cfg80211 1081344 3 rtw89_8852b,rtw89_core,mac80211
> ~~
> 
> 4. cbd's built result,
> Lunar,
> ~~
> remote: Resolving deltas: 100% (391/391), completed with 118 local objects.
> remote: *** kernel-cbd *********************************************************
> remote: * Queueing builds (your 'u_lMstrNxt'); ok to interrupt
> remote: * For results: ssh cbd ls kobako-lunar-0e58018b43c1-ioeM
> remote: * 96/480 cores busy (1/5 hosts), 0 builds queued
> remote: 2023-01-12 03:16:35 kobako-lunar-0e58018b43c1-ioeM/amd64/BUILD-OK
> remote: 2023-01-12 03:17:47 kobako-lunar-0e58018b43c1-ioeM/arm64/BUILD-OK
> remote: 2023-01-12 03:11:36 kobako-lunar-0e58018b43c1-ioeM/armhf/BUILD-OK
> remote: 2023-01-12 03:16:30 kobako-lunar-0e58018b43c1-ioeM/ppc64el/BUILD-OK
> remote: 2023-01-12 03:10:24 kobako-lunar-0e58018b43c1-ioeM/s390x/BUILD-OK
> remote: ************************************************************************
> To cbd:lunar.git
> ~~
> OEM-6.1,
> remote: Resolving deltas: 100% (399/399), completed with 121 local objects.
> remote: *** kernel-cbd *********************************************************
> remote: * Queueing builds (your 'oem-6.1-next'); ok to interrupt
> remote: * For results: ssh cbd ls kobako-jammy-c1002f30ccc3-m65z
> remote: * 0/192 cores busy (0/2 hosts), 0 builds queued
> remote: 2023-01-12 05:25:23 kobako-jammy-c1002f30ccc3-m65z/amd64/BUILD-OK
> remote: ************************************************************************
> To cbd:jammy.git
> 
> [Where problems could occur]
> Medium, a new driver so the current driver may have some edge cases didn't consider.
> 
> [Misc]
> For generic Jammy, need more patches to enable RTL8852be so only SRU for OEM-6.1.
> 
> Alexander Wetzel (2):
>    [Lunar/OEM-6.1] wifi: mac80211: add internal handler for
>      wake_tx_queue
>    [Lunar/OEM-6.1] wifi: mac80211: add wake_tx_queue callback to
>      drivers
> 
> Ching-Te Ku (1):
>    [Lunar/OEM-6.1] wifi: rtw89: coex: move chip_ops::btc_bt_aci_imp
>      to a generic code
> 
> Eric Huang (1):
>    [Lunar/OEM-6.1] wifi: rtw89: parse PHY status only when PPDU is
>      to_self
> 
> Johannes Berg (1):
>    [Lunar/OEM-6.1] wifi: realtek: remove duplicated wake_tx_queue
> 
> Koba Ko (1):
>    [OEM-6.1] UBUNTU: [Config] Enable CONFIG_RTW89_8852B and
>      CONFIG_RTW89_8852BE
> 
> Ping-Ke Shih (30):
>    [Lunar/OEM-6.1] wifi: rtw89: 8852b: add BB and RF tables (1 of 2)
>    [Lunar/OEM-6.1] wifi: rtw89: 8852b: add BB and RF tables (2 of 2)
>    [Lunar/OEM-6.1] wifi: rtw89: 8852b: add tables for RFK
>    [Lunar/OEM-6.1] wifi: rtw89: 8852b: add chip_ops::set_txpwr
>    [Lunar/OEM-6.1] wifi: rtw89: 8852b: add chip_ops to read efuse
>    [Lunar/OEM-6.1] wifi: rtw89: 8852b: add chip_ops to read phy cap
>    [Lunar/OEM-6.1] wifi: rtw89: 8852be: add 8852BE PCI entry
>    [Lunar/OEM-6.1] wifi: rtw89: phy: ignore warning of bb gain
>      cfg_type 4
>    [Lunar/OEM-6.1] wifi: rtw89: 8852b: set proper configuration
>      before loading NCTL
>    [Lunar/OEM-6.1] wifi: rtw89: 8852b: add HFC quota arrays
>    [Lunar/OEM-6.1] wifi: rtw89: make generic functions to convert
>      subband gain index
>    [Lunar/OEM-6.1] wifi: rtw89: 8852b: add chip_ops::set_channel
>    [Lunar/OEM-6.1] wifi: rtw89: 8852b: add
>      chip_ops::set_channel_help
>    [Lunar/OEM-6.1] wifi: rtw89: 8852b: add power on/off functions
>    [Lunar/OEM-6.1] wifi: rtw89: 8852b: add basic baseband chip_ops
>    [Lunar/OEM-6.1] wifi: rtw89: 8852b: add chip_ops to get thermal
>    [Lunar/OEM-6.1] wifi: rtw89: 8852b: add chip_ops related to BT
>      coexistence
>    [Lunar/OEM-6.1] wifi: rtw89: 8852b: add chip_ops to query PPDU
>    [Lunar/OEM-6.1] wifi: rtw89: 8852b: add chip_ops to configure
>      TX/RX path
>    [Lunar/OEM-6.1] wifi: rtw89: 8852b: add functions to control BB
>      to assist RF calibrations
>    [Lunar/OEM-6.1] wifi: rtw89: 8852b: add basic attributes of
>      chip_info
>    [Lunar/OEM-6.1] wifi: rtw89: 8852b: rfk: add DACK
>    [Lunar/OEM-6.1] wifi: rtw89: 8852b: rfk: add RCK
>    [Lunar/OEM-6.1] wifi: rtw89: 8852b: rfk: add RX DCK
>    [Lunar/OEM-6.1] wifi: rtw89: 8852b: rfk: add IQK
>    [Lunar/OEM-6.1] wifi: rtw89: 8852b: rfk: add TSSI
>    [Lunar/OEM-6.1] wifi: rtw89: 8852b: rfk: add DPK
>    [Lunar/OEM-6.1] wifi: rtw89: 8852b: add chip_ops related to RF
>      calibration
>    [Lunar/OEM-6.1] wifi: rtw89: phy: add dummy C2H handler to avoid
>      warning message
>    [Lunar/OEM-6.1] wifi: rtw89: 8852b: add 8852be to Makefile and
>      Kconfig
> 
> Po-Hao Huang (1):
>    [Lunar/OEM-6.1] wifi: rtw89: correct 6 GHz scan behavior
> 
> Zong-Zhe Yang (2):
>    [Lunar/OEM-6.1] wifi: rtw89: phy: make generic txpwr setting
>      functions
>    [Lunar/OEM-6.1] wifi: rtw89: debug: txpwr_table considers sign
> 
>   debian.oem/config/annotations                 |     2 +
>   drivers/net/wireless/admtek/adm8211.c         |     1 +
>   drivers/net/wireless/ath/ar5523/ar5523.c      |     1 +
>   drivers/net/wireless/ath/ath11k/mac.c         |     1 +
>   drivers/net/wireless/ath/ath5k/mac80211-ops.c |     1 +
>   drivers/net/wireless/ath/ath9k/htc_drv_main.c |     1 +
>   drivers/net/wireless/ath/carl9170/main.c      |     1 +
>   drivers/net/wireless/ath/wcn36xx/main.c       |     1 +
>   drivers/net/wireless/atmel/at76c50x-usb.c     |     1 +
>   drivers/net/wireless/broadcom/b43/main.c      |     1 +
>   .../net/wireless/broadcom/b43legacy/main.c    |     1 +
>   .../broadcom/brcm80211/brcmsmac/mac80211_if.c |     1 +
>   .../net/wireless/intel/iwlegacy/4045-mac.c    |     1 +
>   .../net/wireless/intel/iwlegacy/4965-mac.c    |     1 +
>   .../net/wireless/intel/iwlwifi/dvm/mac80211.c |     1 +
>   drivers/net/wireless/intersil/p54/main.c      |     1 +
>   drivers/net/wireless/mac80211_hwsim.c         |     1 +
>   .../net/wireless/marvell/libertas_tf/main.c   |     1 +
>   drivers/net/wireless/marvell/mwl8k.c          |     1 +
>   drivers/net/wireless/mediatek/mt7601u/main.c  |     1 +
>   drivers/net/wireless/purelifi/plfxlc/mac.c    |     1 +
>   .../net/wireless/ralink/rt2x00/rt2400pci.c    |     1 +
>   .../net/wireless/ralink/rt2x00/rt2500pci.c    |     1 +
>   .../net/wireless/ralink/rt2x00/rt2500usb.c    |     1 +
>   .../net/wireless/ralink/rt2x00/rt2800pci.c    |     1 +
>   .../net/wireless/ralink/rt2x00/rt2800soc.c    |     1 +
>   .../net/wireless/ralink/rt2x00/rt2800usb.c    |     1 +
>   drivers/net/wireless/ralink/rt2x00/rt61pci.c  |     1 +
>   drivers/net/wireless/ralink/rt2x00/rt73usb.c  |     1 +
>   .../wireless/realtek/rtl818x/rtl8180/dev.c    |     1 +
>   .../wireless/realtek/rtl818x/rtl8187/dev.c    |     1 +
>   .../wireless/realtek/rtl8xxxu/rtl8xxxu_core.c |     1 +
>   drivers/net/wireless/realtek/rtlwifi/core.c   |     1 +
>   drivers/net/wireless/realtek/rtw89/Kconfig    |    14 +
>   drivers/net/wireless/realtek/rtw89/Makefile   |     9 +
>   drivers/net/wireless/realtek/rtw89/coex.c     |     9 +-
>   drivers/net/wireless/realtek/rtw89/core.c     |     3 +
>   drivers/net/wireless/realtek/rtw89/core.h     |    26 +-
>   drivers/net/wireless/realtek/rtw89/debug.c    |    12 +-
>   drivers/net/wireless/realtek/rtw89/fw.c       |    28 +-
>   drivers/net/wireless/realtek/rtw89/fw.h       |     1 +
>   drivers/net/wireless/realtek/rtw89/mac.c      |     1 +
>   drivers/net/wireless/realtek/rtw89/mac.h      |     1 +
>   drivers/net/wireless/realtek/rtw89/phy.c      |   198 +-
>   drivers/net/wireless/realtek/rtw89/phy.h      |    80 +-
>   drivers/net/wireless/realtek/rtw89/reg.h      |   192 +-
>   drivers/net/wireless/realtek/rtw89/rtw8852a.c |   159 +-
>   drivers/net/wireless/realtek/rtw89/rtw8852a.h |     1 -
>   drivers/net/wireless/realtek/rtw89/rtw8852b.c |  2436 +-
>   drivers/net/wireless/realtek/rtw89/rtw8852b.h |   137 +
>   .../net/wireless/realtek/rtw89/rtw8852b_rfk.c |  4174 +++
>   .../net/wireless/realtek/rtw89/rtw8852b_rfk.h |    25 +
>   .../realtek/rtw89/rtw8852b_rfk_table.c        |   794 +
>   .../realtek/rtw89/rtw8852b_rfk_table.h        |    62 +
>   .../wireless/realtek/rtw89/rtw8852b_table.c   | 22877 ++++++++++++++++
>   .../wireless/realtek/rtw89/rtw8852b_table.h   |    30 +
>   .../net/wireless/realtek/rtw89/rtw8852be.c    |    64 +
>   drivers/net/wireless/realtek/rtw89/rtw8852c.c |   205 +-
>   drivers/net/wireless/realtek/rtw89/rtw8852c.h |     1 -
>   drivers/net/wireless/rsi/rsi_91x_mac80211.c   |     1 +
>   drivers/net/wireless/silabs/wfx/main.c        |     1 +
>   drivers/net/wireless/st/cw1200/main.c         |     1 +
>   drivers/net/wireless/ti/wl1251/main.c         |     1 +
>   drivers/net/wireless/ti/wlcore/main.c         |     1 +
>   drivers/net/wireless/zydas/zd1211rw/zd_mac.c  |     1 +
>   drivers/staging/vt6655/device_main.c          |     1 +
>   drivers/staging/vt6656/main_usb.c             |     1 +
>   include/net/mac80211.h                        |    51 +-
>   net/mac80211/util.c                           |    46 +
>   69 files changed, 31263 insertions(+), 415 deletions(-)
>   create mode 100644 drivers/net/wireless/realtek/rtw89/rtw8852b.h
>   create mode 100644 drivers/net/wireless/realtek/rtw89/rtw8852b_rfk.c
>   create mode 100644 drivers/net/wireless/realtek/rtw89/rtw8852b_rfk.h
>   create mode 100644 drivers/net/wireless/realtek/rtw89/rtw8852b_rfk_table.c
>   create mode 100644 drivers/net/wireless/realtek/rtw89/rtw8852b_rfk_table.h
>   create mode 100644 drivers/net/wireless/realtek/rtw89/rtw8852b_table.c
>   create mode 100644 drivers/net/wireless/realtek/rtw89/rtw8852b_table.h
> 

Can we not do these giant patch bombs ? How about a pull request instead ?

-- 
-----------
Tim Gardner
Canonical, Inc




More information about the kernel-team mailing list