Add support for USB devices, starting with just RTL8851BU. RTL8832BU/RTL8852BU can be supported easily later. RTL8832CU/RTL8852CU can be supported as well, but it keeps losing the connection. This is based on rtw88_usb and the official rtl8851bu driver v1.19.10-70-g84e35c28d.20231019 from here: https://github.com/fofajardo/rtl8851bu I didn't test with any PCI devices. Bitterblue Smith (13): wifi: rtw89: 8851b: Accept USB devices and load their MAC address wifi: rtw89: Get dle_mem via rtw89_hci_dle_mem() wifi: rtw89: Rename hfc_param_ini to hfc_param_ini_pcie wifi: rtw89: Add dle_mem_usb2 and dle_mem_usb3 wifi: rtw89: Add hfc_param_ini_usb wifi: rtw89: Disable some power saving for USB wifi: rtw89: Add extra TX headroom for USB wifi: rtw89: Hide some errors when the device is unplugged wifi: rtw89: Fix rtw89_mac_power_switch() for USB wifi: rtw89: Add some definitions for USB wifi: rtw89: Add usb.{c,h} wifi: rtw89: Add rtw8851bu.c wifi: rtw89: Enable the new USB modules drivers/net/wireless/realtek/rtw89/Kconfig | 14 + drivers/net/wireless/realtek/rtw89/Makefile | 6 + drivers/net/wireless/realtek/rtw89/core.c | 3 + drivers/net/wireless/realtek/rtw89/core.h | 16 +- drivers/net/wireless/realtek/rtw89/mac.c | 49 +- drivers/net/wireless/realtek/rtw89/mac.h | 8 + drivers/net/wireless/realtek/rtw89/pci.c | 8 + drivers/net/wireless/realtek/rtw89/phy.c | 3 +- drivers/net/wireless/realtek/rtw89/ps.c | 3 + drivers/net/wireless/realtek/rtw89/reg.h | 30 + drivers/net/wireless/realtek/rtw89/rtw8851b.c | 91 +- .../net/wireless/realtek/rtw89/rtw8851bu.c | 33 + drivers/net/wireless/realtek/rtw89/rtw8852a.c | 7 +- drivers/net/wireless/realtek/rtw89/rtw8852b.c | 7 +- .../net/wireless/realtek/rtw89/rtw8852bt.c | 7 +- drivers/net/wireless/realtek/rtw89/rtw8852c.c | 7 +- drivers/net/wireless/realtek/rtw89/rtw8922a.c | 7 +- drivers/net/wireless/realtek/rtw89/txrx.h | 1 + drivers/net/wireless/realtek/rtw89/usb.c | 1030 +++++++++++++++++ drivers/net/wireless/realtek/rtw89/usb.h | 61 + 20 files changed, 1359 insertions(+), 32 deletions(-) create mode 100644 drivers/net/wireless/realtek/rtw89/rtw8851bu.c create mode 100644 drivers/net/wireless/realtek/rtw89/usb.c create mode 100644 drivers/net/wireless/realtek/rtw89/usb.h -- 2.49.0