On Tue, Feb 13, 2024 at 03:55:06PM +0000, Matthias Kaehlcke wrote: > On Tue, Feb 13, 2024 at 03:41:56PM +0100, Johan Hovold wrote: > > On Wed, Dec 27, 2023 at 07:03:06PM +0100, Johan Hovold wrote: > > > The WCN6855 firmware on the Lenovo ThinkPad X13s expects the Bluetooth > > > device address in MSB order when setting it using the > > > EDL_WRITE_BD_ADDR_OPCODE command. > > > Reverse the little-endian address before setting it to make sure that > > > the address can be configured using tools like btmgmt or using the > > > 'local-bd-address' devicetree property. > > > > > > Note that this can potentially break systems with boot firmware which > > > has started relying on the broken behaviour and is incorrectly passing > > > the address via devicetree in MSB order. > > > > > > Fixes: 5c0a1001c8be ("Bluetooth: hci_qca: Add helper to set device address") > > > Cc: stable@xxxxxxxxxxxxxxx # 5.1 > > > Cc: Balakrishna Godavarthi <quic_bgodavar@xxxxxxxxxxx> > > > Cc: Matthias Kaehlcke <mka@xxxxxxxxxxxx> > > > Signed-off-by: Johan Hovold <johan+linaro@xxxxxxxxxx> > > > > Can we go ahead and merge this one to get this fixed in 6.8? > > > > I've spoken to Bjorn Andersson at Qualcomm about this and he is in > > favour of doing so. The only people actually using the devicetree > > property should be the Chromium team and they control their own boot > > firmware and should be able to update it in lockstep (and Android uses > > some custom hacks to set the address that are not in mainline). > > Unfortunately it's not as trivial as it sounds for Chrome OS. The boot > firmware is controlled by Chrome OS, however for any baseboard (e.g. > 'trogdor') there is a larger number binary firmware packages, one > for every model derived from that baseboard. There can be dozens of > models. Chrome OS Firmware releases are qualified and rolled out per > model. FW qual may involve the ODM, usually there are multiple ODMs > per board. In an absolute emergency it would be possible to coordinate > a qual and synced rollout for all models, but it's definitely > non-trivial in terms of operations. Ok, fair enough. Could you please provide a list of the compatible strings that you guys currently use and I can add new compatible strings for those, while keeping the current ones for backwards compatibility with older boot firmware? Johan