[09/15] arm64: dts: qcom: sc7280-crd: add dummy Bluetooth VDDIO supply

Message ID 20230617171541.286957-9-krzysztof.kozlowski@linaro.org
State New
Headers
Series [01/15] arm64: dts: qcom: msm8916-gt5: drop incorrect accelerometer interrupt-names |

Commit Message

Krzysztof Kozlowski June 17, 2023, 5:15 p.m. UTC
  Bluetooth requires VDDIO supply.  Due to lack of schematics provide
something dummy to satisfy `dtbs_check`:

  sc7280-crd-r3.dtb: bluetooth: 'vddio-supply' is a required property

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
 arch/arm64/boot/dts/qcom/sc7280-crd-r3.dts | 11 +++++++++++
 1 file changed, 11 insertions(+)
  

Comments

Konrad Dybcio June 19, 2023, 1:14 p.m. UTC | #1
On 17.06.2023 19:15, Krzysztof Kozlowski wrote:
> Bluetooth requires VDDIO supply.  Due to lack of schematics provide
> something dummy to satisfy `dtbs_check`:
> 
>   sc7280-crd-r3.dtb: bluetooth: 'vddio-supply' is a required property
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> ---
For this:

Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org>

+CC Doug to perhaps fix this properly (though I think we should have got
it through the cros list anyway)

Konrad
>  arch/arm64/boot/dts/qcom/sc7280-crd-r3.dts | 11 +++++++++++
>  1 file changed, 11 insertions(+)
> 
> diff --git a/arch/arm64/boot/dts/qcom/sc7280-crd-r3.dts b/arch/arm64/boot/dts/qcom/sc7280-crd-r3.dts
> index afae7f46b050..b1aa5b0ee95c 100644
> --- a/arch/arm64/boot/dts/qcom/sc7280-crd-r3.dts
> +++ b/arch/arm64/boot/dts/qcom/sc7280-crd-r3.dts
> @@ -24,6 +24,13 @@ aliases {
>  	chosen {
>  		stdout-path = "serial0:115200n8";
>  	};
> +
> +	bt_vddio: regulator-bt-vddio {
> +		compatible = "regulator-fixed";
> +		regulator-name = "bt-vddio";
> +		regulator-min-microvolt = <1800000>;
> +		regulator-max-microvolt = <1800000>;
> +	};
>  };
>  
>  &apps_rsc {
> @@ -38,6 +45,10 @@ vreg_s1k_1p0: smps1 {
>  	};
>  };
>  
> +&bluetooth {
> +	vddio-supply = <&bt_vddio>;
> +};
> +
>  ap_tp_i2c: &i2c0 {
>  	status = "okay";
>  	clock-frequency = <400000>;
  
Doug Anderson June 23, 2023, 6:34 p.m. UTC | #2
Hi,

On Mon, Jun 19, 2023 at 6:14 AM Konrad Dybcio <konrad.dybcio@linaro.org> wrote:
>
> On 17.06.2023 19:15, Krzysztof Kozlowski wrote:
> > Bluetooth requires VDDIO supply.  Due to lack of schematics provide
> > something dummy to satisfy `dtbs_check`:
> >
> >   sc7280-crd-r3.dtb: bluetooth: 'vddio-supply' is a required property
> >
> > Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> > ---
> For this:
>
> Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org>
>
> +CC Doug to perhaps fix this properly (though I think we should have got
> it through the cros list anyway)
>
> Konrad
> >  arch/arm64/boot/dts/qcom/sc7280-crd-r3.dts | 11 +++++++++++
> >  1 file changed, 11 insertions(+)
> >
> > diff --git a/arch/arm64/boot/dts/qcom/sc7280-crd-r3.dts b/arch/arm64/boot/dts/qcom/sc7280-crd-r3.dts
> > index afae7f46b050..b1aa5b0ee95c 100644
> > --- a/arch/arm64/boot/dts/qcom/sc7280-crd-r3.dts
> > +++ b/arch/arm64/boot/dts/qcom/sc7280-crd-r3.dts
> > @@ -24,6 +24,13 @@ aliases {
> >       chosen {
> >               stdout-path = "serial0:115200n8";
> >       };
> > +
> > +     bt_vddio: regulator-bt-vddio {
> > +             compatible = "regulator-fixed";
> > +             regulator-name = "bt-vddio";
> > +             regulator-min-microvolt = <1800000>;
> > +             regulator-max-microvolt = <1800000>;
> > +     };
> >  };
> >
> >  &apps_rsc {
> > @@ -38,6 +45,10 @@ vreg_s1k_1p0: smps1 {
> >       };
> >  };
> >
> > +&bluetooth {
> > +     vddio-supply = <&bt_vddio>;
> > +};
> > +

I would have a hard time believing that the more correct fix wouldn't be:

vddio-supply = <&vreg_l18b_1p8>;

Specifically L18B is what we have on the newer CRD (the one that is
considered a "herobrine" and includes Qcard) and also IDP2. In terms
of timeline / similarities, CRD-rev3 falls in between IDP2 and newer
CRD. These both agree on L18B. The only board that uses something
different (L19B) is the very old IDP1.

That being said, Qualcomm has never provided (at least to me)
schematics for any given reference board. Whenever asked, I was always
pointed at schematics that were said to be "close enough". Thus, I
can't really give a definitive answer here. Even so, pointing at L18B
seems to me to be 99% likely to be correct.

If anyone reading actually has schematics, I think you can just look
at what goes to the pad labelled "VDDPX_3". The datasheet I have shows
that as "Pad group 3 (most peripherals)". If nothing else, that powers
the pins connected to the UART that Bluetooth uses (along with a whole
pile of other things in the system).


-Doug
  
Krzysztof Kozlowski June 24, 2023, 7:39 a.m. UTC | #3
On 23/06/2023 20:34, Doug Anderson wrote:
> Hi,
> 
> On Mon, Jun 19, 2023 at 6:14 AM Konrad Dybcio <konrad.dybcio@linaro.org> wrote:
>>
>> On 17.06.2023 19:15, Krzysztof Kozlowski wrote:
>>> Bluetooth requires VDDIO supply.  Due to lack of schematics provide
>>> something dummy to satisfy `dtbs_check`:
>>>
>>>   sc7280-crd-r3.dtb: bluetooth: 'vddio-supply' is a required property
>>>
>>> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
>>> ---
>> For this:
>>
>> Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org>
>>
>> +CC Doug to perhaps fix this properly (though I think we should have got
>> it through the cros list anyway)
>>
>> Konrad
>>>  arch/arm64/boot/dts/qcom/sc7280-crd-r3.dts | 11 +++++++++++
>>>  1 file changed, 11 insertions(+)
>>>
>>> diff --git a/arch/arm64/boot/dts/qcom/sc7280-crd-r3.dts b/arch/arm64/boot/dts/qcom/sc7280-crd-r3.dts
>>> index afae7f46b050..b1aa5b0ee95c 100644
>>> --- a/arch/arm64/boot/dts/qcom/sc7280-crd-r3.dts
>>> +++ b/arch/arm64/boot/dts/qcom/sc7280-crd-r3.dts
>>> @@ -24,6 +24,13 @@ aliases {
>>>       chosen {
>>>               stdout-path = "serial0:115200n8";
>>>       };
>>> +
>>> +     bt_vddio: regulator-bt-vddio {
>>> +             compatible = "regulator-fixed";
>>> +             regulator-name = "bt-vddio";
>>> +             regulator-min-microvolt = <1800000>;
>>> +             regulator-max-microvolt = <1800000>;
>>> +     };
>>>  };
>>>
>>>  &apps_rsc {
>>> @@ -38,6 +45,10 @@ vreg_s1k_1p0: smps1 {
>>>       };
>>>  };
>>>
>>> +&bluetooth {
>>> +     vddio-supply = <&bt_vddio>;
>>> +};
>>> +
> 
> I would have a hard time believing that the more correct fix wouldn't be:
> 
> vddio-supply = <&vreg_l18b_1p8>;
> 
> Specifically L18B is what we have on the newer CRD (the one that is
> considered a "herobrine" and includes Qcard) and also IDP2. In terms
> of timeline / similarities, CRD-rev3 falls in between IDP2 and newer
> CRD. These both agree on L18B. The only board that uses something
> different (L19B) is the very old IDP1.
> 
> That being said, Qualcomm has never provided (at least to me)
> schematics for any given reference board. Whenever asked, I was always
> pointed at schematics that were said to be "close enough". Thus, I
> can't really give a definitive answer here. Even so, pointing at L18B
> seems to me to be 99% likely to be correct.

99% is good enough for me. Thanks, I will send a v2 after the merge window.

Best regards,
Krzysztof
  

Patch

diff --git a/arch/arm64/boot/dts/qcom/sc7280-crd-r3.dts b/arch/arm64/boot/dts/qcom/sc7280-crd-r3.dts
index afae7f46b050..b1aa5b0ee95c 100644
--- a/arch/arm64/boot/dts/qcom/sc7280-crd-r3.dts
+++ b/arch/arm64/boot/dts/qcom/sc7280-crd-r3.dts
@@ -24,6 +24,13 @@  aliases {
 	chosen {
 		stdout-path = "serial0:115200n8";
 	};
+
+	bt_vddio: regulator-bt-vddio {
+		compatible = "regulator-fixed";
+		regulator-name = "bt-vddio";
+		regulator-min-microvolt = <1800000>;
+		regulator-max-microvolt = <1800000>;
+	};
 };
 
 &apps_rsc {
@@ -38,6 +45,10 @@  vreg_s1k_1p0: smps1 {
 	};
 };
 
+&bluetooth {
+	vddio-supply = <&bt_vddio>;
+};
+
 ap_tp_i2c: &i2c0 {
 	status = "okay";
 	clock-frequency = <400000>;