Hi Meng, > Firmware for rtl chipset is as part of the linux-firmware repository > in dir linux-firmware/rtl_bt. Today, the rtl8761a_config, > rtl8821a_config, rtl8723b_config and rtl8723bs_config files are used > in btrtl, but it doesn't actually exist, which causes errors like: > > bluetooth: Direct firmware load for rtl_bt/rtl8821a_config.bin > failed with error -2 > > According to the files in the rtl_bt directory in the Linux firmware, > fixes the driver to load correct firmware file for rtl. > > Signed-off-by: Meng Tang <tangmeng@xxxxxxxxxxxxx> > --- > drivers/bluetooth/btrtl.c | 13 +++++-------- > 1 file changed, 5 insertions(+), 8 deletions(-) > > diff --git a/drivers/bluetooth/btrtl.c b/drivers/bluetooth/btrtl.c > index c2030f7e25b4..e3cfe0dff07d 100644 > --- a/drivers/bluetooth/btrtl.c > +++ b/drivers/bluetooth/btrtl.c > @@ -88,14 +88,14 @@ static const struct id_table ic_id_table[] = { > .config_needed = true, > .has_rom_version = true, > .fw_name = "rtl_bt/rtl8723bs_fw.bin", > - .cfg_name = "rtl_bt/rtl8723bs_config" }, > + .cfg_name = "rtl_bt/rtl8723bs_config-OBDA8723" }, this change is not explained. > > /* 8723B */ > { IC_INFO(RTL_ROM_LMP_8723B, 0xb, 0x6, HCI_USB), > .config_needed = false, > .has_rom_version = true, > .fw_name = "rtl_bt/rtl8723b_fw.bin", > - .cfg_name = "rtl_bt/rtl8723b_config" }, > + .cfg_name = NULL }, .config_needed is set to false. Then we better use a request_firmware version where the existence of the file is optional. And even if we wanted to remove it (which would make the .config_needed obsolute), we are not doing a NULL assignment, we just remove the line. > > /* 8723D */ > { IC_INFO(RTL_ROM_LMP_8723B, 0xd, 0x8, HCI_USB), > @@ -116,7 +116,7 @@ static const struct id_table ic_id_table[] = { > .config_needed = false, > .has_rom_version = true, > .fw_name = "rtl_bt/rtl8821a_fw.bin", > - .cfg_name = "rtl_bt/rtl8821a_config" }, > + .cfg_name = NULL }, > > /* 8821C */ > { IC_INFO(RTL_ROM_LMP_8821A, 0xc, 0x8, HCI_USB), > @@ -131,7 +131,7 @@ static const struct id_table ic_id_table[] = { > .config_needed = false, > .has_rom_version = true, > .fw_name = "rtl_bt/rtl8761a_fw.bin", > - .cfg_name = "rtl_bt/rtl8761a_config" }, > + .cfg_name = NULL }, > > /* 8761B */ > { IC_INFO(RTL_ROM_LMP_8761A, 0xb, 0xa, HCI_UART), > @@ -921,15 +921,12 @@ MODULE_VERSION(VERSION); > MODULE_LICENSE("GPL"); > MODULE_FIRMWARE("rtl_bt/rtl8723a_fw.bin"); > MODULE_FIRMWARE("rtl_bt/rtl8723b_fw.bin"); > -MODULE_FIRMWARE("rtl_bt/rtl8723b_config.bin"); > MODULE_FIRMWARE("rtl_bt/rtl8723bs_fw.bin"); > -MODULE_FIRMWARE("rtl_bt/rtl8723bs_config.bin"); > +MODULE_FIRMWARE("rtl_bt/rtl8723bs_config-OBDA8723.bin"); > MODULE_FIRMWARE("rtl_bt/rtl8723ds_fw.bin"); > MODULE_FIRMWARE("rtl_bt/rtl8723ds_config.bin"); > MODULE_FIRMWARE("rtl_bt/rtl8761a_fw.bin"); > -MODULE_FIRMWARE("rtl_bt/rtl8761a_config.bin"); > MODULE_FIRMWARE("rtl_bt/rtl8821a_fw.bin"); > -MODULE_FIRMWARE("rtl_bt/rtl8821a_config.bin"); > MODULE_FIRMWARE("rtl_bt/rtl8822b_fw.bin"); > MODULE_FIRMWARE("rtl_bt/rtl8822b_config.bin"); > MODULE_FIRMWARE("rtl_bt/rtl8852au_fw.bin"); Regards Marcel