From: Sean Wang <objelf@xxxxxxxxx> The patchset adds the MT7921 SDIO (MT7921S) Blutooth support to btmtksdio driver, which basically are made up of 3 parts. PART 1: patch 1-3 to create btmtk module to rely on These are preliminary patches for MT7921s driver to move the common firmware download procedure and the common functions from MT7921u to btmtk module to make MT7921u, MT7921s and other devices can share with to reduce the unnecessary duplicated code being created. PART 2: patch 4-8 to refactor btmtksdio prior to adding mt7921s These are preliminary patches for MT7921s driver to refactor the current btmtksdio to make MT7921S is able to coexist with the devices the current driver can support with the generic code and improve the performance on packet transmitting and receving process. PART 3: patch 9-10 to add specific mt7921s logic Add the specific logic regarding to mt7921s bluetooth. The changelog from v1 to v2: - fix the test failure reported from bluez test bot - fix the test warning reported from kernel test robot - rebase onto the up-to-date bluetooth-next/master - fix the typo from mt7961_data to mt7921_data - improve the function btsdio_mtk_reg_read with dropping the hard coding Mark-yw Chen (1): Bluetooth: btmtksdio: transmit packet according to status TX_EMPTY Sean Wang (9): Bluetooth: mediatek: add BT_MTK module Bluetooth: btmtksido: rely on BT_MTK module Bluetooth: btmtksdio: add .set_bdaddr support Bluetooth: btmtksdio: explicitly set WHISR as write-1-clear Bluetooth: btmtksdio: move interrupt service to work Bluetooth: btmtksdio: update register CSDIOCSR operation Bluetooth: btmtksdio: use register CRPLR to read packet length mmc: add MT7921 SDIO identifiers for MediaTek Bluetooth devices Bluetooth: btmtksdio: add MT7921s Bluetooth support drivers/bluetooth/Kconfig | 6 + drivers/bluetooth/Makefile | 1 + drivers/bluetooth/btmtk.c | 289 ++++++++++++++++++++ drivers/bluetooth/btmtk.h | 111 ++++++++ drivers/bluetooth/btmtksdio.c | 496 +++++++++++++++++----------------- drivers/bluetooth/btusb.c | 331 +---------------------- include/linux/mmc/sdio_ids.h | 1 + 7 files changed, 658 insertions(+), 577 deletions(-) create mode 100644 drivers/bluetooth/btmtk.c create mode 100644 drivers/bluetooth/btmtk.h -- 2.25.1