Message ID | 20220315095129.15254-1-tangmeng@uniontech.com |
---|---|
State | New |
Headers | show |
Series | [v3,1/2] Bluetooth: btrtl: btmrvl: Fix firmware filename for rtl8723bs chipset | expand |
Hello, On Tue, Mar 15, 2022 at 10:51 AM Meng Tang <tangmeng@uniontech.com> wrote: > > Firmware for rtl8723bs chipset is as part of the linux-firmware > repository in filename rtl8723bs_config-OBDA8723.bin. > > This patch fixes mwifiex driver to load correct firmware file for > rtl8723bs. This raises some serious questions for me: - the subject states that this patch is for the btmrvl driver - mwifiex is for Marvell based chips which to my knowledge are not related to any Realtek chips, so mwifiex should never try to load Realtek firmware files [...] > @@ -88,7 +88,7 @@ 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 incorrect, see btrtl_initialize(): if (btrtl_dev->ic_info->cfg_name) { if (postfix) { snprintf(cfg_name, sizeof(cfg_name), "%s-%s.bin", btrtl_dev->ic_info->cfg_name, postfix); } else { snprintf(cfg_name, sizeof(cfg_name), "%s.bin", btrtl_dev->ic_info->cfg_name); This suffix (postfix) can be either OBDA8723, OBDA0623 or just be absent - see hci_h5.c (h5_acpi_match, h5_serdev_probe() which sets h5->id and h5_btrtl_setup() which uses h5->id). [...] > -MODULE_FIRMWARE("rtl_bt/rtl8723bs_config.bin"); > +MODULE_FIRMWARE("rtl_bt/rtl8723bs_config-OBDA8723.bin"); According to the driver code "rtl_bt/rtl8723bs_config.bin" is a valid value so I think it should not be removed. Adding "rtl_bt/rtl8723bs_config-OBDA8723.bin" is fine for me - if that's done then "rtl_bt/rtl8723bs_config-OBDA0623.bin" should be added as well. Best regards, Martin
Hi, On Tue, Mar 15, 2022 at 10:52 AM Meng Tang <tangmeng@uniontech.com> wrote: > > Firmware for rtl chipset is as part of the linux-firmware repository > in dir linux-firmware/rtl_bt. Today, the rtl8761a_config, > rtl8821a_config and rtl8723b_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 These config files can be board specific. I don't know the policy for MODULE_FIRMWARE macros. Personally I think: if the driver tries to load a specific firmware file then it's fine to have a MODULE_FIRMWARE entry. Even if this firmware is not part of the linux-firmware repository. Best regards, Martin
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 and rtl8723b_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. > > Fixes: f96dbd322a8f1 (Bluetooth: btrtl: add MODULE_FIRMWARE declarations) > Signed-off-by: Meng Tang <tangmeng@uniontech.com> > --- > drivers/bluetooth/btrtl.c | 3 --- > 1 file changed, 3 deletions(-) I am ignoring this patch since the subject is bogus. Regards Marcel
diff --git a/drivers/bluetooth/btrtl.c b/drivers/bluetooth/btrtl.c index c2030f7e25b4..449858b65e8e 100644 --- a/drivers/bluetooth/btrtl.c +++ b/drivers/bluetooth/btrtl.c @@ -88,7 +88,7 @@ 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), @@ -923,7 +923,7 @@ 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");
Firmware for rtl8723bs chipset is as part of the linux-firmware repository in filename rtl8723bs_config-OBDA8723.bin. This patch fixes mwifiex driver to load correct firmware file for rtl8723bs. Fixes: c50903e3ee1b5 (Bluetooth: btrtl: add support for the RTL8723BS and RTL8723DS chips) Signed-off-by: Meng Tang <tangmeng@uniontech.com> --- drivers/bluetooth/btrtl.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)