Message ID | 20220311032620.28362-1-tangmeng@uniontech.com |
---|---|
State | Superseded |
Headers | show |
Series | Bluetooth: btrtl: btmrvl: Fix firmware filename for rtl chipset | expand |
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@uniontech.com> > --- > 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
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" }, /* 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 }, /* 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");
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@uniontech.com> --- drivers/bluetooth/btrtl.c | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-)