[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAA8EJprywWbdoyfAbys=0WzEdAkp0UK1fzzCPzxKRjyk9DrC6Q@mail.gmail.com>
Date: Mon, 18 Mar 2024 15:00:40 +0200
From: Dmitry Baryshkov <dmitry.baryshkov@...aro.org>
To: Johan Hovold <johan+linaro@...nel.org>
Cc: Marcel Holtmann <marcel@...tmann.org>, Luiz Augusto von Dentz <luiz.dentz@...il.com>,
Rob Herring <robh+dt@...nel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>, Conor Dooley <conor+dt@...nel.org>,
Johan Hedberg <johan.hedberg@...il.com>, Matthias Kaehlcke <mka@...omium.org>,
Doug Anderson <dianders@...gle.com>, Bjorn Andersson <quic_bjorande@...cinc.com>,
Konrad Dybcio <konrad.dybcio@...aro.org>, linux-bluetooth@...r.kernel.org,
linux-arm-msm@...r.kernel.org, netdev@...r.kernel.org,
devicetree@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2 1/4] dt-bindings: bluetooth: add new wcn3991 compatible
to fix bd_addr
On Mon, 18 Mar 2024 at 13:09, Johan Hovold <johan+linaro@...nel.org> wrote:
>
> Several Qualcomm Bluetooth controllers lack persistent storage for the
> device address and instead one can be provided by the boot firmware
> using the 'local-bd-address' devicetree property.
>
> The Bluetooth bindings clearly says that the address should be specified
> in little-endian order, but due to a long-standing bug in the Qualcomm
> driver which reversed the address some bootloaders have been providing
> the address in big-endian order instead.
>
> The only device out there that should be affected by this is the WCN3991
> used in some Chromebooks. To maintain backwards compatibility, mark the
> current compatible string as deprecated and add a new
> 'qcom,wcn3991-bt-bdaddr-le' for firmware which conforms with the
> binding.
>
> Signed-off-by: Johan Hovold <johan+linaro@...nel.org>
> ---
> .../net/bluetooth/qualcomm-bluetooth.yaml | 29 +++++++++++--------
> 1 file changed, 17 insertions(+), 12 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/net/bluetooth/qualcomm-bluetooth.yaml b/Documentation/devicetree/bindings/net/bluetooth/qualcomm-bluetooth.yaml
> index eba2f3026ab0..b6fce6d02138 100644
> --- a/Documentation/devicetree/bindings/net/bluetooth/qualcomm-bluetooth.yaml
> +++ b/Documentation/devicetree/bindings/net/bluetooth/qualcomm-bluetooth.yaml
> @@ -15,18 +15,22 @@ description:
>
> properties:
> compatible:
> - enum:
> - - qcom,qca2066-bt
> - - qcom,qca6174-bt
> - - qcom,qca9377-bt
> - - qcom,wcn3988-bt
> - - qcom,wcn3990-bt
> - - qcom,wcn3991-bt
> - - qcom,wcn3998-bt
> - - qcom,qca6390-bt
> - - qcom,wcn6750-bt
> - - qcom,wcn6855-bt
> - - qcom,wcn7850-bt
> + oneOf:
> + - enum:
> + - qcom,qca2066-bt
> + - qcom,qca6174-bt
> + - qcom,qca9377-bt
> + - qcom,wcn3988-bt
> + - qcom,wcn3990-bt
> + - qcom,wcn3991-bt-bdaddr-le
This compatible doesn't describe new hardware kind. As such, I think,
the better way would be to continue using qcom,wcn3991-bt compatible
string + add some kind of qcom,bt-addr-le property.
> + - qcom,wcn3998-bt
> + - qcom,qca6390-bt
> + - qcom,wcn6750-bt
> + - qcom,wcn6855-bt
> + - qcom,wcn7850-bt
> + - enum:
> + - qcom,wcn3991-bt
> + deprecated: true
>
> enable-gpios:
> maxItems: 1
> @@ -122,6 +126,7 @@ allOf:
> - qcom,wcn3988-bt
> - qcom,wcn3990-bt
> - qcom,wcn3991-bt
> + - qcom,wcn3991-bt-bdaddr-le
> - qcom,wcn3998-bt
> then:
> required:
> --
> 2.43.2
>
>
--
With best wishes
Dmitry
Powered by blists - more mailing lists