Received: by 2002:a05:7412:2a91:b0:fc:a2b0:25d7 with SMTP id u17csp7118rdh; Tue, 13 Feb 2024 07:55:38 -0800 (PST) X-Forwarded-Encrypted: i=3; AJvYcCUTgHR5vv3WsnCLxTjFt4KRhQV2w2J9/2aRv0DNBgIuRwPQlHH5WOswjzA7qsOrdQ18N9SM2TvjJX0vyF8GO1HmKYxHBs2RkeVbRKciXw== X-Google-Smtp-Source: AGHT+IGT0Tvp9Bi8hFdY5x4ddM6u5O+c8A3UlaKF/AyYCvjPG3CCDGyYQ6lKf9Oi+LMuquOy8V7y X-Received: by 2002:a9d:67d2:0:b0:6e1:29f3:6fbd with SMTP id c18-20020a9d67d2000000b006e129f36fbdmr11047847otn.22.1707839738294; Tue, 13 Feb 2024 07:55:38 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1707839738; cv=pass; d=google.com; s=arc-20160816; b=cogbr4KrwyC2a0tTsnP040nuMlDUgnJGye35CK8+I7nwiWckMMxp83zP8P2uhK0msq txyAmiWr6ZAfzy19871SUgv5kP3GivfgUyx+e2qsTRw/rA4zrrMOFaMazn6v0Epjk77p ArTmFSPMvr/GMLjeDSBQT1GHM5dBsOu75lXh3pu3+JC5YzV1PuMcXha525FQ8d8PvAeF fpXK1kgqbL/oUBW1ylBXkoA0K+9wfbGTwJkj3gx8wTZJU0/xWZ9jPNiuYBVSJRwFpujN gN6p/0Vgcy55LFWHB17MybsXZzOc8ot4ejG/TBO4sR01ffuiAdK8xYiK0uQ4Sub6E2pB okAA== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=in-reply-to:content-disposition:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:references:message-id:subject:cc :to:from:date:dkim-signature; bh=7LwxIniMZti5uVl7y9nWIeGEVkoZmsZ8d7f4xUj1DkA=; fh=jnCLvTxAsIVlibuUrYwghvF1K+gieYIaAeaC8wupz/4=; b=bWlmmbxvrCOQe3n8ZzvCXSR4ENp2v5PFiRM004KDoeiXpsIMM0KkQ0eoo59h8dBwpv jUpjF7pWDy5v+aBxiihzXbw90Q7HMruf4or07bvg6kt8io3NhvWscphcov1rWD/hI2ME w5UlZxNDO3TQxuZCT41MLpsU6bq81I4kZqFqpBgS+nXoPbe1h4FUgDSPAPdHdceaBMFO uMzRGVwfFUu28QylvXGjowrzzuRNkwp5aWI6PIGCT4icv0wVG/zzj+z1vfRNte6Aj7wj nVn1FeWVjuO7dNpSRvRM1vQgVkqYCX1aH4Bgo5c71khYE+5+8xjb6sSzv8BIyv+UJ3k5 NvVQ==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@chromium.org header.s=google header.b=d4k9+K6j; arc=pass (i=1 spf=pass spfdomain=chromium.org dkim=pass dkdomain=chromium.org dmarc=pass fromdomain=chromium.org); spf=pass (google.com: domain of linux-bluetooth+bounces-1821-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) smtp.mailfrom="linux-bluetooth+bounces-1821-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=chromium.org X-Forwarded-Encrypted: i=2; AJvYcCWjSksHory251wqG3mPGZIAWuctu5MsvpdXMSgcLB55fEXdXvDneB7sNdKwxT2AHSOB2PdG3A1YET3RX+/q2sCWlH/rwPLzwDdh1aND/A== Return-Path: Received: from ny.mirrors.kernel.org (ny.mirrors.kernel.org. [2604:1380:45d1:ec00::1]) by mx.google.com with ESMTPS id k2-20020ac85fc2000000b0042db3db25afsi635829qta.773.2024.02.13.07.55.38 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 13 Feb 2024 07:55:38 -0800 (PST) Received-SPF: pass (google.com: domain of linux-bluetooth+bounces-1821-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) client-ip=2604:1380:45d1:ec00::1; Authentication-Results: mx.google.com; dkim=pass header.i=@chromium.org header.s=google header.b=d4k9+K6j; arc=pass (i=1 spf=pass spfdomain=chromium.org dkim=pass dkdomain=chromium.org dmarc=pass fromdomain=chromium.org); spf=pass (google.com: domain of linux-bluetooth+bounces-1821-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) smtp.mailfrom="linux-bluetooth+bounces-1821-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=chromium.org Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ny.mirrors.kernel.org (Postfix) with ESMTPS id 394B41C2501F for ; Tue, 13 Feb 2024 15:55:19 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id ACCAA5F560; Tue, 13 Feb 2024 15:55:10 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=chromium.org header.i=@chromium.org header.b="d4k9+K6j" X-Original-To: linux-bluetooth@vger.kernel.org Received: from mail-io1-f52.google.com (mail-io1-f52.google.com [209.85.166.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9E5ED5DF18 for ; Tue, 13 Feb 2024 15:55:08 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.166.52 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1707839710; cv=none; b=sdLIwZJ7B9SOB1JMeEt5P+7ybs0D6QAr6pWsn04PL0DDwrha0MH9zL3FcV/c11wAjbgLDgcXf35FGUlRC9uELfmx0ywDFG+R/Bl1lv/3I2CCICll9cRurQoBuVYS5qDParQpNqHGnDdyKWQq1hJ2EucRtW5gkCBbLxniIk2ItqA= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1707839710; c=relaxed/simple; bh=xsgxJAOX8DI/vf5lySI2U3o+0BDInfLVAtoc2OdnwzU=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=UD4ODO/wdm0vJIaiBUsvuLlouIB0nbf4S3kWDGMcUeZvbvpeweX4HUA785+hIp3UwNo8Dtwo/3CIBel89U6HrFNV8SXSYZkh1J4jFqlnmG4lgKXOkSo/+fQPGk3MWu4nTX0oY4vQefl8nLkk8p0FdE06m3ZAAsKKOMfL4v34zUU= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=chromium.org; spf=pass smtp.mailfrom=chromium.org; dkim=pass (1024-bit key) header.d=chromium.org header.i=@chromium.org header.b=d4k9+K6j; arc=none smtp.client-ip=209.85.166.52 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=chromium.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=chromium.org Received: by mail-io1-f52.google.com with SMTP id ca18e2360f4ac-7bc332d49f6so224039439f.1 for ; Tue, 13 Feb 2024 07:55:08 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1707839708; x=1708444508; darn=vger.kernel.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=7LwxIniMZti5uVl7y9nWIeGEVkoZmsZ8d7f4xUj1DkA=; b=d4k9+K6jetezz6i7JYk4GPr+XlDtqDfmtsvES/VU4LCgfRL1qgKcYs8A3HcVtXk/Sd O4uLLZQ6ltxVGIlbuuolM7LHw0oeE3DrjVIUgfvt8n/ShR+E1eLaSRZwxgiRkdQ3d7/v cYtunPZ5I7+wHI4BLzxmPo+xgHOESN3x8tJwk= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1707839708; x=1708444508; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=7LwxIniMZti5uVl7y9nWIeGEVkoZmsZ8d7f4xUj1DkA=; b=J/+nu8mmZM1ANTko8K1qSLuej+79pUJEchUrlXYYiTfPsA+pcTb4TdO7Gy49683akO 7lPtIrYHH/dFTc8m2P+HCVln+VnBSxAiCkjlHOeBF8lfbtH05jaftOpGQtn4sjB1HHMd XHFY5qTxgATt6uSkaGsI65aNSR1zs3ZkPg7Zg3m6kV4SCUX0raSve7FKOQhdi7Li5LhV 5BAMPs3GCW3aWQ8Sql0HUPS7nqNldkzytOifliHdN7x0AE/ReuE/2VQ2PHYXbxTHJJXD 7skf2JNgQgWTiddr6VFFKaWF11eKVoZUlfijtnaSc/NbK5VZm947XV92QzmnwX7y1bKp nQQA== X-Forwarded-Encrypted: i=1; AJvYcCUPTUh2uvMDJ1+LZM5G5Vlm6AnpZrrvIo1/met/EnQoALj59qxNT8SFU3waOH8XrxDx77+U/dYmIHX1S9NjtFSax7o68f3bH+S+d7/Ix7wa X-Gm-Message-State: AOJu0YyNV33H274A/9ZEe10zK0fmIaHpnEmjWAQMKNlyTaRa+8eCCc+U BlwhgbddDXGTbzuyav6kGI8f4HzQN9XbBEVJqNX71yrsGjiB+nzrmQ9Fz895SQ== X-Received: by 2002:a05:6602:234b:b0:7c4:4942:17b1 with SMTP id r11-20020a056602234b00b007c4494217b1mr37577iot.19.1707839707359; Tue, 13 Feb 2024 07:55:07 -0800 (PST) X-Forwarded-Encrypted: i=1; AJvYcCWOqsqCoVdk8nI6W22kovhNRLZ1NdvljX60EjeMsMLuZxFfQxF9/Tapwm6e0KXScCRgCIlvi68PjPXS56CrVyDqGiA2MryIoPpl3vxIgBuP+uJ66h0l3AYISYMXXznwIoyA0PjqMRcSeiwmMscMBENyW3bgv20pN1QW6p91K7yHf7zJBaGXuAtcC84yC/a4wQzF0Sbx2oPndH+qFM+FIIYEnM2lJAQJQztdBBHP3NCG6lKo/O3QZ86RZqytFI2xnpUnHxXtLt/bQ9TYlNzEWNDPbhVzjl9zrwmI2VlMYtSmWc8kqlpgFTyTD1fNvWd2yCMHBVcwEXiqbPuifseo7y2hFJF7Sqw6fssu8Fd/YHhYFUijyxIaSsQErcX/8yGZNKYMwNuXVQaCc+W+cy1CKeU2NNYedd6sVYmnRqmFLTekXrd4KWIDWIw2NPWX38YJkLPCoxADV3HXj50sZ70uag== Received: from localhost (147.220.222.35.bc.googleusercontent.com. [35.222.220.147]) by smtp.gmail.com with UTF8SMTPSA id y11-20020a6be50b000000b007c44f8750c5sm1961995ioc.12.2024.02.13.07.55.06 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 13 Feb 2024 07:55:06 -0800 (PST) Date: Tue, 13 Feb 2024 15:55:06 +0000 From: Matthias Kaehlcke To: Johan Hovold Cc: Luiz Augusto von Dentz , Marcel Holtmann , Johan Hedberg , Bjorn Andersson , Konrad Dybcio , linux-bluetooth@vger.kernel.org, linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org, stable@vger.kernel.org, Balakrishna Godavarthi , Johan Hovold , Doug Anderson , Stephen Boyd Subject: Re: [PATCH] Bluetooth: qca: fix device-address endianness Message-ID: References: <20231227180306.6319-1-johan+linaro@kernel.org> Precedence: bulk X-Mailing-List: linux-bluetooth@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: On Tue, Feb 13, 2024 at 03:41:56PM +0100, Johan Hovold wrote: > Hi Luiz, > > 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. > > > > Presumably, this is the case for all non-ROME devices which all use the > > EDL_WRITE_BD_ADDR_OPCODE command for this (unlike the ROME devices which > > use a different command and expect the address in LSB order). > > > > 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@vger.kernel.org # 5.1 > > Cc: Balakrishna Godavarthi > > Cc: Matthias Kaehlcke > > Signed-off-by: Johan Hovold > > 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.