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 <anarsoul@gmail.com>
Linux firmware
This repository contains all these firmware images which have been extracted from older drivers, as well various new firmware images which we were never permitted to include in a GPL'd work, but which we have been permitted to redistribute under separate cover.
The upstream repository is located at https://gitlab.com/kernel-firmware/linux-firmware.git.
Submitting firmware
To submit firmware to this repository, please do one of the following:
- open a MR upstream
- send a git binary diff to
linux-firmware@kernel.org - send a git pull request to:
linux-firmware@kernel.org
Quality
If your commit adds new firmware, it must update the WHENCE file to
clearly state the license under which the firmware is available, and
that it is redistributable. Being redistributable includes ensuring
the firmware license provided includes an implicit or explicit
patent grant to end users to ensure full functionality of device
operation with the firmware. If the license is long and involved, it's
permitted to include it in a separate file and refer to it from the
WHENCE file (IE 'See LICENSE.foo for details.').
And if it were possible, a changelog of the firmware itself.
To maintain consistent quality on the repository, please run the following before submitting a patch:
make check
If you don't have pre-commit installed, you can install it with:
pip install pre-commit
Your commit must contain a Signed-Off-By: from someone authoritative on
the licensing of the firmware in question (i.e. from within the company
that owns the code).
Warnings
- Don't send any
CONFIDENTIALITY STATEMENTin your e-mail, patch or request. Otherwise your firmware will never be accepted. - Maintainers are really busy, so don't expect a prompt reply.