[05/14] arm64: dts: qcom: sa8775p: add support for the on-board PMICs

Message ID 20230314183043.619997-6-brgl@bgdev.pl
State New
Headers
Series arm64: dts: qcom: sa8775p: add basic PMIC support |

Commit Message

Bartosz Golaszewski March 14, 2023, 6:30 p.m. UTC
  From: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>

Add a new .dtsi file for sa8775p PMICs and add the four PMICs interfaced
to the SoC via SPMI.

Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
---
 arch/arm64/boot/dts/qcom/sa8775p-pmics.dtsi | 37 +++++++++++++++++++++
 1 file changed, 37 insertions(+)
 create mode 100644 arch/arm64/boot/dts/qcom/sa8775p-pmics.dtsi
  

Comments

Konrad Dybcio March 14, 2023, 8:22 p.m. UTC | #1
On 14.03.2023 19:30, Bartosz Golaszewski wrote:
> From: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
> 
> Add a new .dtsi file for sa8775p PMICs and add the four PMICs interfaced
> to the SoC via SPMI.
> 
> Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
> ---
>  arch/arm64/boot/dts/qcom/sa8775p-pmics.dtsi | 37 +++++++++++++++++++++
>  1 file changed, 37 insertions(+)
>  create mode 100644 arch/arm64/boot/dts/qcom/sa8775p-pmics.dtsi
> 
> diff --git a/arch/arm64/boot/dts/qcom/sa8775p-pmics.dtsi b/arch/arm64/boot/dts/qcom/sa8775p-pmics.dtsi
> new file mode 100644
> index 000000000000..77e2515a7ab9
> --- /dev/null
> +++ b/arch/arm64/boot/dts/qcom/sa8775p-pmics.dtsi
> @@ -0,0 +1,37 @@
> +// SPDX-License-Identifier: BSD-3-Clause
> +/*
> + * Copyright (c) 2023, Linaro Limited
> + */
> +
> +#include <dt-bindings/input/input.h>
> +#include <dt-bindings/spmi/spmi.h>
> +
> +&spmi_bus {
> +	pmk8775_0: pmic@0 {
pmk8775..

> +		compatible = "qcom,pmm8654au", "qcom,spmi-pmic";
..or pmm8654au?

Konrad
> +		reg = <0x0 SPMI_USID>;
> +		#address-cells = <1>;
> +		#size-cells = <0>;
> +	};
> +
> +	pmk8775_1: pmic@2 {
> +		compatible = "qcom,pmm8654au", "qcom,spmi-pmic";
> +		reg = <0x2 SPMI_USID>;
> +		#address-cells = <1>;
> +		#size-cells = <0>;
> +	};
> +
> +	pmk8775_2: pmic@4 {
> +		compatible = "qcom,pmm8654au", "qcom,spmi-pmic";
> +		reg = <0x4 SPMI_USID>;
> +		#address-cells = <1>;
> +		#size-cells = <0>;
> +	};
> +
> +	pmk8775_3: pmic@6 {
> +		compatible = "qcom,pmm8654au", "qcom,spmi-pmic";
> +		reg = <0x6 SPMI_USID>;
> +		#address-cells = <1>;
> +		#size-cells = <0>;
> +	};
> +};
  
Bartosz Golaszewski March 20, 2023, 10:24 a.m. UTC | #2
On Tue, Mar 14, 2023 at 9:22 PM Konrad Dybcio <konrad.dybcio@linaro.org> wrote:
>
>
>
> On 14.03.2023 19:30, Bartosz Golaszewski wrote:
> > From: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
> >
> > Add a new .dtsi file for sa8775p PMICs and add the four PMICs interfaced
> > to the SoC via SPMI.
> >
> > Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
> > ---
> >  arch/arm64/boot/dts/qcom/sa8775p-pmics.dtsi | 37 +++++++++++++++++++++
> >  1 file changed, 37 insertions(+)
> >  create mode 100644 arch/arm64/boot/dts/qcom/sa8775p-pmics.dtsi
> >
> > diff --git a/arch/arm64/boot/dts/qcom/sa8775p-pmics.dtsi b/arch/arm64/boot/dts/qcom/sa8775p-pmics.dtsi
> > new file mode 100644
> > index 000000000000..77e2515a7ab9
> > --- /dev/null
> > +++ b/arch/arm64/boot/dts/qcom/sa8775p-pmics.dtsi
> > @@ -0,0 +1,37 @@
> > +// SPDX-License-Identifier: BSD-3-Clause
> > +/*
> > + * Copyright (c) 2023, Linaro Limited
> > + */
> > +
> > +#include <dt-bindings/input/input.h>
> > +#include <dt-bindings/spmi/spmi.h>
> > +
> > +&spmi_bus {
> > +     pmk8775_0: pmic@0 {
> pmk8775..
>
> > +             compatible = "qcom,pmm8654au", "qcom,spmi-pmic";
> ..or pmm8654au?
>

Honestly, I got inspired by this bit from sc8280xp-pmics.dtsi:

 54 &spmi_bus {
 55         pmk8280: pmic@0 {
 56                 compatible = "qcom,pmk8350", "qcom,spmi-pmic";
 57                 reg = <0x0 SPMI_USID>;
 58                 #address-cells = <1>;
 59                 #size-cells = <0>;

Where the label seems to follow the SoC's numbering. Do you think it
would be better to consistently use the pmic's name?

Bartosz

> Konrad
> > +             reg = <0x0 SPMI_USID>;
> > +             #address-cells = <1>;
> > +             #size-cells = <0>;
> > +     };
> > +
> > +     pmk8775_1: pmic@2 {
> > +             compatible = "qcom,pmm8654au", "qcom,spmi-pmic";
> > +             reg = <0x2 SPMI_USID>;
> > +             #address-cells = <1>;
> > +             #size-cells = <0>;
> > +     };
> > +
> > +     pmk8775_2: pmic@4 {
> > +             compatible = "qcom,pmm8654au", "qcom,spmi-pmic";
> > +             reg = <0x4 SPMI_USID>;
> > +             #address-cells = <1>;
> > +             #size-cells = <0>;
> > +     };
> > +
> > +     pmk8775_3: pmic@6 {
> > +             compatible = "qcom,pmm8654au", "qcom,spmi-pmic";
> > +             reg = <0x6 SPMI_USID>;
> > +             #address-cells = <1>;
> > +             #size-cells = <0>;
> > +     };
> > +};
  
Konrad Dybcio March 20, 2023, 10:38 a.m. UTC | #3
On 20.03.2023 11:24, Bartosz Golaszewski wrote:
> On Tue, Mar 14, 2023 at 9:22 PM Konrad Dybcio <konrad.dybcio@linaro.org> wrote:
>>
>>
>>
>> On 14.03.2023 19:30, Bartosz Golaszewski wrote:
>>> From: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
>>>
>>> Add a new .dtsi file for sa8775p PMICs and add the four PMICs interfaced
>>> to the SoC via SPMI.
>>>
>>> Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
>>> ---
>>>  arch/arm64/boot/dts/qcom/sa8775p-pmics.dtsi | 37 +++++++++++++++++++++
>>>  1 file changed, 37 insertions(+)
>>>  create mode 100644 arch/arm64/boot/dts/qcom/sa8775p-pmics.dtsi
>>>
>>> diff --git a/arch/arm64/boot/dts/qcom/sa8775p-pmics.dtsi b/arch/arm64/boot/dts/qcom/sa8775p-pmics.dtsi
>>> new file mode 100644
>>> index 000000000000..77e2515a7ab9
>>> --- /dev/null
>>> +++ b/arch/arm64/boot/dts/qcom/sa8775p-pmics.dtsi
>>> @@ -0,0 +1,37 @@
>>> +// SPDX-License-Identifier: BSD-3-Clause
>>> +/*
>>> + * Copyright (c) 2023, Linaro Limited
>>> + */
>>> +
>>> +#include <dt-bindings/input/input.h>
>>> +#include <dt-bindings/spmi/spmi.h>
>>> +
>>> +&spmi_bus {
>>> +     pmk8775_0: pmic@0 {
>> pmk8775..
>>
>>> +             compatible = "qcom,pmm8654au", "qcom,spmi-pmic";
>> ..or pmm8654au?
>>
> 
> Honestly, I got inspired by this bit from sc8280xp-pmics.dtsi:
> 
>  54 &spmi_bus {
>  55         pmk8280: pmic@0 {
>  56                 compatible = "qcom,pmk8350", "qcom,spmi-pmic";
>  57                 reg = <0x0 SPMI_USID>;
>  58                 #address-cells = <1>;
>  59                 #size-cells = <0>;
> 
> Where the label seems to follow the SoC's numbering. Do you think it
> would be better to consistently use the pmic's name?
Generally, the automotive PMICs seem to be carbon copies of their non-AU
relatives, except they're built to a better electrical spec (because well..
they're gonna be used in cars) or very very slightly modified, so I propose:

actual_pmic: pmic@sid {
	compatbile = "qcom,actualpmic", "qcom,pmic-its-based-on";
}

Konrad
> 
> Bartosz
> 
>> Konrad
>>> +             reg = <0x0 SPMI_USID>;
>>> +             #address-cells = <1>;
>>> +             #size-cells = <0>;
>>> +     };
>>> +
>>> +     pmk8775_1: pmic@2 {
>>> +             compatible = "qcom,pmm8654au", "qcom,spmi-pmic";
>>> +             reg = <0x2 SPMI_USID>;
>>> +             #address-cells = <1>;
>>> +             #size-cells = <0>;
>>> +     };
>>> +
>>> +     pmk8775_2: pmic@4 {
>>> +             compatible = "qcom,pmm8654au", "qcom,spmi-pmic";
>>> +             reg = <0x4 SPMI_USID>;
>>> +             #address-cells = <1>;
>>> +             #size-cells = <0>;
>>> +     };
>>> +
>>> +     pmk8775_3: pmic@6 {
>>> +             compatible = "qcom,pmm8654au", "qcom,spmi-pmic";
>>> +             reg = <0x6 SPMI_USID>;
>>> +             #address-cells = <1>;
>>> +             #size-cells = <0>;
>>> +     };
>>> +};
  

Patch

diff --git a/arch/arm64/boot/dts/qcom/sa8775p-pmics.dtsi b/arch/arm64/boot/dts/qcom/sa8775p-pmics.dtsi
new file mode 100644
index 000000000000..77e2515a7ab9
--- /dev/null
+++ b/arch/arm64/boot/dts/qcom/sa8775p-pmics.dtsi
@@ -0,0 +1,37 @@ 
+// SPDX-License-Identifier: BSD-3-Clause
+/*
+ * Copyright (c) 2023, Linaro Limited
+ */
+
+#include <dt-bindings/input/input.h>
+#include <dt-bindings/spmi/spmi.h>
+
+&spmi_bus {
+	pmk8775_0: pmic@0 {
+		compatible = "qcom,pmm8654au", "qcom,spmi-pmic";
+		reg = <0x0 SPMI_USID>;
+		#address-cells = <1>;
+		#size-cells = <0>;
+	};
+
+	pmk8775_1: pmic@2 {
+		compatible = "qcom,pmm8654au", "qcom,spmi-pmic";
+		reg = <0x2 SPMI_USID>;
+		#address-cells = <1>;
+		#size-cells = <0>;
+	};
+
+	pmk8775_2: pmic@4 {
+		compatible = "qcom,pmm8654au", "qcom,spmi-pmic";
+		reg = <0x4 SPMI_USID>;
+		#address-cells = <1>;
+		#size-cells = <0>;
+	};
+
+	pmk8775_3: pmic@6 {
+		compatible = "qcom,pmm8654au", "qcom,spmi-pmic";
+		reg = <0x6 SPMI_USID>;
+		#address-cells = <1>;
+		#size-cells = <0>;
+	};
+};