From e39831b1a9d75eb91af5c1711082edea5e259d3f Mon Sep 17 00:00:00 2001 From: Vasily Khoruzhick Date: Sun, 5 Jan 2025 22:44:53 -0800 Subject: [PATCH] rtl_bt: Add separate config for RLT8723CS Bluetooth part While RTL8723CS is able to start with RTL8723BS config, it doesn't actually work. Powering on device with "power on" in bluetoothctl and enabling scan via "scan on" doesn't find a single device. Unfortunately, RealtekBluetoothUartPackage_2.17.119.0525 doesn't have a config for RTL8723CS, so we have to resort to a known-working config from armbian firmware repository [1]. Their commit history doesn't mention its origin. Closer inspection of the config reveals that indeed 8723CS uses different entry offsets, e.g. 8723BT: 55ab 2387 # Magic 3a00 # Total len 2b00 06 0000 00aa bbcc # Offset = 0x002b, len = 0x06 f400 03 0100 00 # Offset = 0x00f4, len = 0x03 f800 02 8500 # Offset = 0x00f8, len = 0x02 2700 01 67 # Offset = 0x0027, len = 0x01 0c00 10 0280 9204 50c5 ea19 e11b f1af 5f01 a40b # Offset = 0x000c, len = 0x10 df01 01 01 # Offset = 0x01df, len = 0x01 fe00 01 01 # Offset = 0x00fe, len = 0x01 e301 01 00 # Offset = 0x01e3, len = 0x01 0000 00 # Offset = 0x0000, len = 0x00 8723CS: 55ab 2387 # Magic 3900 # Total len f400 01 01 # Offset = 0x00f4, len = 0x01 f600 02 8100 # Offset = 0x00f6, len = 0x02 fa00 02 1280 # Offset = 0x00fa, len = 0x02 0c00 10 0280 9204 50c5 ea19 e11b fdaf 5f01 a40b # Offset = 0x000c, len = 0x10 2700 01 63 # Offset = 0x0027, len = 0x1 0001 01 01 # Offset = 0x0100, len = 01 5b01 04 0b0b0b0a # Offset = 0x015b, len = 0x04 4200 02 4150 # Offset = 0x0042, len = 0x02 e000 01 42 # Offset = 0x00e0, len = 0x01 The only known devices with mainline Linux support that use 8723CS are Pine64's PineTab, PinePhone and Pinebook, all of them work with this config. [1] https://github.com/armbian/firmware Signed-off-by: Vasily Khoruzhick --- WHENCE | 2 +- rtl_bt/rtl8723cs_xx_config.bin | Bin 0 -> 63 bytes 2 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 rtl_bt/rtl8723cs_xx_config.bin diff --git a/WHENCE b/WHENCE index 72771022..e0c5a0d7 100644 --- a/WHENCE +++ b/WHENCE @@ -4212,7 +4212,7 @@ File: rtl_bt/rtl8723bs_config.bin Link: rtl_bt/rtl8723bs_config-OBDA8723.bin -> rtl8723bs_config.bin Link: rtl_bt/rtl8723bs_config-OBDA0623.bin -> rtl8723bs_config.bin File: rtl_bt/rtl8723cs_xx_fw.bin -Link: rtl_bt/rtl8723cs_xx_config.bin -> rtl8723bs_config.bin +File: rtl_bt/rtl8723cs_xx_config.bin File: rtl_bt/rtl8761a_fw.bin File: rtl_bt/rtl8761b_fw.bin File: rtl_bt/rtl8761b_config.bin diff --git a/rtl_bt/rtl8723cs_xx_config.bin b/rtl_bt/rtl8723cs_xx_config.bin new file mode 100644 index 0000000000000000000000000000000000000000..0f507eddc70330b267bff501b1ebb96432b2887e GIT binary patch literal 63 zcmWGtt=w+O@P&bq@f!nEBf~ESCZPr%1_7pqNh|?JUr9cc{<}V&aS69N17k8!4P!JT S3pY16mlFe%W55FjMkfG3=@0b) literal 0 HcmV?d00001