[PATCH 0/2] Bluetooth: btmtksdio: Stop discarding the hardware device id
Chris Lu <[email protected]>
| Newsgroups | org.kernel.vger.linux-bluetooth,org.infradead.lists.linux-mediatek,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <[email protected]> |
btmtksdio_setup() reads the device id from register 0x70010200 and then throws it away twice: an snprintf() overwrites the filename that btmtk_fw_get_filename() derived from it, and mt79xx_setup() passes a hardcoded 0 on to btmtk_setup_firmware_79xx(). Neither matters on supported hardware, since the device ids that would make a difference - 0x6639, 0x7925 and a flavored 0x7961 - all belong to parts with no SDIO interface. So this targets bluetooth-next with no Fixes: tags. What it buys is that the two functions stop silently ignoring their input, which is a trap for the next chip added to this driver. Both patches come from a larger MT7928 series [1], where they were described as fixing firmware load failures on MT6639, MT7925 and MT7928. That does not hold for the SDIO driver and has been dropped. Tested on a Chromebook with MT7921S, whose chip id register reports 0x7961: before and after, the driver requests mediatek/BT_RAM_CODE_MT7961_1_2_hdr.bin, the firmware loads, and the controller powers on and connects to an A2DP device. [1] https://lore.kernel.org/linux-bluetooth/[email protected]/ Chris Lu (2): Bluetooth: btmtksdio: Remove redundant firmware filename override Bluetooth: btmtksdio: Pass the hardware device id to mt79xx_setup() drivers/bluetooth/btmtksdio.c | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) -- 2.45.2