diff mbox series

[v2,09/22] arm64: dts: qcom: pmk8350: allow overriding the label

Message ID 20230401220810.3563708-10-dmitry.baryshkov@linaro.org (mailing list archive)
State Handled Elsewhere
Headers show
Series arm64: dts: qcom: remove duplication in PMIC declarations | expand

Commit Message

Dmitry Baryshkov April 1, 2023, 10:07 p.m. UTC
sc8280xp-pmics.dtsi incorporates a copy of pmk8350, but the dts files
use labels following the markings found in the schematics. Allow
overriding the labels in pmk8350.dtsi.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
---
 arch/arm64/boot/dts/qcom/pmic-dyn-footer.dtsi | 13 +++++++++
 arch/arm64/boot/dts/qcom/pmic-dyn-header.dtsi | 14 ++++++++++
 arch/arm64/boot/dts/qcom/pmk8350.dtsi         | 28 +++++++++++--------
 3 files changed, 44 insertions(+), 11 deletions(-)
 create mode 100644 arch/arm64/boot/dts/qcom/pmic-dyn-footer.dtsi
 create mode 100644 arch/arm64/boot/dts/qcom/pmic-dyn-header.dtsi

Comments

Krzysztof Kozlowski April 2, 2023, 9:44 a.m. UTC | #1
On 02/04/2023 00:07, Dmitry Baryshkov wrote:
> sc8280xp-pmics.dtsi incorporates a copy of pmk8350, but the dts files
> use labels following the markings found in the schematics. Allow
> overriding the labels in pmk8350.dtsi.
> 
> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
> ---
>  arch/arm64/boot/dts/qcom/pmic-dyn-footer.dtsi | 13 +++++++++
>  arch/arm64/boot/dts/qcom/pmic-dyn-header.dtsi | 14 ++++++++++
>  arch/arm64/boot/dts/qcom/pmk8350.dtsi         | 28 +++++++++++--------
>  3 files changed, 44 insertions(+), 11 deletions(-)
>  create mode 100644 arch/arm64/boot/dts/qcom/pmic-dyn-footer.dtsi
>  create mode 100644 arch/arm64/boot/dts/qcom/pmic-dyn-header.dtsi
> 
> diff --git a/arch/arm64/boot/dts/qcom/pmic-dyn-footer.dtsi b/arch/arm64/boot/dts/qcom/pmic-dyn-footer.dtsi
> new file mode 100644
> index 000000000000..1c81269f0783
> --- /dev/null
> +++ b/arch/arm64/boot/dts/qcom/pmic-dyn-footer.dtsi
> @@ -0,0 +1,13 @@
> +// SPDX-License-Identifier: BSD-3-Clause
> +/*
> + * Copyright (c) 2023, Linaro Limited
> + */
> +
> +/* cleanly revert the effects pmic-dyn-header.dtsi */
> +
> +#undef LABEL
> +#undef _LABEL
> +#undef __LABEL

That makes the code less readable.

> +
> +#undef PMIC_SID
> +#undef PMIC_LABEL

And it keeps growing and confusing.

> diff --git a/arch/arm64/boot/dts/qcom/pmic-dyn-header.dtsi b/arch/arm64/boot/dts/qcom/pmic-dyn-header.dtsi
> new file mode 100644
> index 000000000000..75f0448568bd
> --- /dev/null
> +++ b/arch/arm64/boot/dts/qcom/pmic-dyn-header.dtsi
> @@ -0,0 +1,14 @@
> +// SPDX-License-Identifier: BSD-3-Clause
> +/*
> + * Copyright (c) 2023, Linaro Limited
> + */
> +
> +/*
> + * Preprocessor symbols to assist in describing PMICs which have configurable
> + * SID. All effects of this header (or its parameters) must be reverted in
> + * pmic-dyn-footer.dtsi.
> + */
> +
> +#define LABEL(name) _LABEL(PMIC_LABEL, name)
> +#define _LABEL(pmic, name) __LABEL(pmic, name)
> +#define __LABEL(pmic, name) pmic ## _ ## name

No, defines in DTS should be simple. This makes it ungrepable.



Best regards,
Krzysztof
Dmitry Baryshkov April 2, 2023, 11:54 a.m. UTC | #2
On Sun, 2 Apr 2023 at 12:44, Krzysztof Kozlowski
<krzysztof.kozlowski@linaro.org> wrote:
>
> On 02/04/2023 00:07, Dmitry Baryshkov wrote:
> > sc8280xp-pmics.dtsi incorporates a copy of pmk8350, but the dts files
> > use labels following the markings found in the schematics. Allow
> > overriding the labels in pmk8350.dtsi.
> >
> > Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
> > ---
> >  arch/arm64/boot/dts/qcom/pmic-dyn-footer.dtsi | 13 +++++++++
> >  arch/arm64/boot/dts/qcom/pmic-dyn-header.dtsi | 14 ++++++++++
> >  arch/arm64/boot/dts/qcom/pmk8350.dtsi         | 28 +++++++++++--------
> >  3 files changed, 44 insertions(+), 11 deletions(-)
> >  create mode 100644 arch/arm64/boot/dts/qcom/pmic-dyn-footer.dtsi
> >  create mode 100644 arch/arm64/boot/dts/qcom/pmic-dyn-header.dtsi
> >
> > diff --git a/arch/arm64/boot/dts/qcom/pmic-dyn-footer.dtsi b/arch/arm64/boot/dts/qcom/pmic-dyn-footer.dtsi
> > new file mode 100644
> > index 000000000000..1c81269f0783
> > --- /dev/null
> > +++ b/arch/arm64/boot/dts/qcom/pmic-dyn-footer.dtsi
> > @@ -0,0 +1,13 @@
> > +// SPDX-License-Identifier: BSD-3-Clause
> > +/*
> > + * Copyright (c) 2023, Linaro Limited
> > + */
> > +
> > +/* cleanly revert the effects pmic-dyn-header.dtsi */
> > +
> > +#undef LABEL
> > +#undef _LABEL
> > +#undef __LABEL
>
> That makes the code less readable.
>
> > +
> > +#undef PMIC_SID
> > +#undef PMIC_LABEL
>
> And it keeps growing and confusing.
>
> > diff --git a/arch/arm64/boot/dts/qcom/pmic-dyn-header.dtsi b/arch/arm64/boot/dts/qcom/pmic-dyn-header.dtsi
> > new file mode 100644
> > index 000000000000..75f0448568bd
> > --- /dev/null
> > +++ b/arch/arm64/boot/dts/qcom/pmic-dyn-header.dtsi
> > @@ -0,0 +1,14 @@
> > +// SPDX-License-Identifier: BSD-3-Clause
> > +/*
> > + * Copyright (c) 2023, Linaro Limited
> > + */
> > +
> > +/*
> > + * Preprocessor symbols to assist in describing PMICs which have configurable
> > + * SID. All effects of this header (or its parameters) must be reverted in
> > + * pmic-dyn-footer.dtsi.
> > + */
> > +
> > +#define LABEL(name) _LABEL(PMIC_LABEL, name)
> > +#define _LABEL(pmic, name) __LABEL(pmic, name)
> > +#define __LABEL(pmic, name) pmic ## _ ## name
>
> No, defines in DTS should be simple. This makes it ungrepable.

I see. I still think that we should remove this duplication. Would you
prefer for me to define all pmk8350.dtsi labels individually? What
kind of approach could you possibly propose?
Konrad Dybcio April 3, 2023, 10:14 a.m. UTC | #3
On 2.04.2023 00:07, Dmitry Baryshkov wrote:
> sc8280xp-pmics.dtsi incorporates a copy of pmk8350, but the dts files
> use labels following the markings found in the schematics. Allow
> overriding the labels in pmk8350.dtsi.
> 
> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
> ---
>  arch/arm64/boot/dts/qcom/pmic-dyn-footer.dtsi | 13 +++++++++
>  arch/arm64/boot/dts/qcom/pmic-dyn-header.dtsi | 14 ++++++++++
>  arch/arm64/boot/dts/qcom/pmk8350.dtsi         | 28 +++++++++++--------
>  3 files changed, 44 insertions(+), 11 deletions(-)
>  create mode 100644 arch/arm64/boot/dts/qcom/pmic-dyn-footer.dtsi
>  create mode 100644 arch/arm64/boot/dts/qcom/pmic-dyn-header.dtsi
> 
> diff --git a/arch/arm64/boot/dts/qcom/pmic-dyn-footer.dtsi b/arch/arm64/boot/dts/qcom/pmic-dyn-footer.dtsi
> new file mode 100644
> index 000000000000..1c81269f0783
> --- /dev/null
> +++ b/arch/arm64/boot/dts/qcom/pmic-dyn-footer.dtsi
> @@ -0,0 +1,13 @@
> +// SPDX-License-Identifier: BSD-3-Clause
> +/*
> + * Copyright (c) 2023, Linaro Limited
> + */
> +
> +/* cleanly revert the effects pmic-dyn-header.dtsi */
> +
> +#undef LABEL
> +#undef _LABEL
> +#undef __LABEL
> +
> +#undef PMIC_SID
> +#undef PMIC_LABEL
> diff --git a/arch/arm64/boot/dts/qcom/pmic-dyn-header.dtsi b/arch/arm64/boot/dts/qcom/pmic-dyn-header.dtsi
> new file mode 100644
> index 000000000000..75f0448568bd
> --- /dev/null
> +++ b/arch/arm64/boot/dts/qcom/pmic-dyn-header.dtsi
> @@ -0,0 +1,14 @@
> +// SPDX-License-Identifier: BSD-3-Clause
> +/*
> + * Copyright (c) 2023, Linaro Limited
> + */
> +
> +/*
> + * Preprocessor symbols to assist in describing PMICs which have configurable
> + * SID. All effects of this header (or its parameters) must be reverted in
> + * pmic-dyn-footer.dtsi.
> + */
> +
> +#define LABEL(name) _LABEL(PMIC_LABEL, name)
> +#define _LABEL(pmic, name) __LABEL(pmic, name)
> +#define __LABEL(pmic, name) pmic ## _ ## name
#define PMIC_LABEL pmk8350
#define LABEL(name) PMIC_LABEL##_##name

?

Konrad
> diff --git a/arch/arm64/boot/dts/qcom/pmk8350.dtsi b/arch/arm64/boot/dts/qcom/pmk8350.dtsi
> index 02e7518ab57b..f26ff3daf119 100644
> --- a/arch/arm64/boot/dts/qcom/pmk8350.dtsi
> +++ b/arch/arm64/boot/dts/qcom/pmk8350.dtsi
> @@ -13,33 +13,39 @@
>  	#define PMIC_SID 0
>  #endif
>  
> +#ifndef PMIC_LABEL
> +#define PMIC_LABEL pmk8350
> +#endif
> +
> +#include "pmic-dyn-header.dtsi"
> +
>  &spmi_bus {
> -	pmk8350: pmic@PMIC_SID {
> +	PMIC_LABEL: pmic@PMIC_SID {
>  		compatible = "qcom,pmk8350", "qcom,spmi-pmic";
>  		reg = <PMIC_SID SPMI_USID>;
>  		#address-cells = <1>;
>  		#size-cells = <0>;
>  
> -		pmk8350_pon: pon@1300 {
> +		LABEL(pon): pon@1300 {
>  			compatible = "qcom,pmk8350-pon";
>  			reg = <0x1300>, <0x800>;
>  			reg-names = "hlos", "pbs";
>  
> -			pmk8350_pon_pwrkey: pwrkey {
> +			LABEL(pon_pwrkey): pwrkey {
>  				compatible = "qcom,pmk8350-pwrkey";
>  				interrupts = <PMIC_SID 0x13 0x7 IRQ_TYPE_EDGE_BOTH>;
>  				linux,code = <KEY_POWER>;
>  				status = "disabled";
>  			};
>  
> -			pmk8350_pon_resin: resin {
> +			LABEL(pon_resin): resin {
>  				compatible = "qcom,pmk8350-resin";
>  				interrupts = <PMIC_SID 0x13 0x6 IRQ_TYPE_EDGE_BOTH>;
>  				status = "disabled";
>  			};
>  		};
>  
> -		pmk8350_vadc: adc@3100 {
> +		LABEL(vadc): adc@3100 {
>  			compatible = "qcom,spmi-adc7";
>  			reg = <0x3100>;
>  			#address-cells = <1>;
> @@ -48,7 +54,7 @@ pmk8350_vadc: adc@3100 {
>  			#io-channel-cells = <1>;
>  		};
>  
> -		pmk8350_adc_tm: adc-tm@3400 {
> +		LABEL(adc_tm): adc-tm@3400 {
>  			compatible = "qcom,adc-tm7";
>  			reg = <0x3400>;
>  			interrupts = <PMIC_SID 0x34 0x0 IRQ_TYPE_EDGE_RISING>;
> @@ -58,7 +64,7 @@ pmk8350_adc_tm: adc-tm@3400 {
>  			status = "disabled";
>  		};
>  
> -		pmk8350_rtc: rtc@6100 {
> +		LABEL(rtc): rtc@6100 {
>  			compatible = "qcom,pmk8350-rtc";
>  			reg = <0x6100>, <0x6200>;
>  			reg-names = "rtc", "alarm";
> @@ -66,7 +72,7 @@ pmk8350_rtc: rtc@6100 {
>  			status = "disabled";
>  		};
>  
> -		pmk8350_sdam_6: nvram@8500 {
> +		LABEL(sdam_6): nvram@8500 {
>  			compatible = "qcom,spmi-sdam";
>  			reg = <0x8500>;
>  			#address-cells = <1>;
> @@ -75,11 +81,11 @@ pmk8350_sdam_6: nvram@8500 {
>  			status = "disabled";
>  		};
>  
> -		pmk8350_gpios: gpio@b000 {
> +		LABEL(gpios): gpio@b000 {
>  			compatible = "qcom,pmk8350-gpio", "qcom,spmi-gpio";
>  			reg = <0xb000>;
>  			gpio-controller;
> -			gpio-ranges = <&pmk8350_gpios 0 0 4>;
> +			gpio-ranges = <&LABEL(gpios) 0 0 4>;
>  			#gpio-cells = <2>;
>  			interrupt-controller;
>  			#interrupt-cells = <2>;
> @@ -87,4 +93,4 @@ pmk8350_gpios: gpio@b000 {
>  	};
>  };
>  
> -#undef PMIC_SID
> +#include "pmic-dyn-footer.dtsi"
Dmitry Baryshkov April 3, 2023, 11:06 a.m. UTC | #4
On Mon, 3 Apr 2023 at 13:14, Konrad Dybcio <konrad.dybcio@linaro.org> wrote:
>
>
>
> On 2.04.2023 00:07, Dmitry Baryshkov wrote:
> > sc8280xp-pmics.dtsi incorporates a copy of pmk8350, but the dts files
> > use labels following the markings found in the schematics. Allow
> > overriding the labels in pmk8350.dtsi.
> >
> > Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
> > ---
> >  arch/arm64/boot/dts/qcom/pmic-dyn-footer.dtsi | 13 +++++++++
> >  arch/arm64/boot/dts/qcom/pmic-dyn-header.dtsi | 14 ++++++++++
> >  arch/arm64/boot/dts/qcom/pmk8350.dtsi         | 28 +++++++++++--------
> >  3 files changed, 44 insertions(+), 11 deletions(-)
> >  create mode 100644 arch/arm64/boot/dts/qcom/pmic-dyn-footer.dtsi
> >  create mode 100644 arch/arm64/boot/dts/qcom/pmic-dyn-header.dtsi
> >
> > diff --git a/arch/arm64/boot/dts/qcom/pmic-dyn-footer.dtsi b/arch/arm64/boot/dts/qcom/pmic-dyn-footer.dtsi
> > new file mode 100644
> > index 000000000000..1c81269f0783
> > --- /dev/null
> > +++ b/arch/arm64/boot/dts/qcom/pmic-dyn-footer.dtsi
> > @@ -0,0 +1,13 @@
> > +// SPDX-License-Identifier: BSD-3-Clause
> > +/*
> > + * Copyright (c) 2023, Linaro Limited
> > + */
> > +
> > +/* cleanly revert the effects pmic-dyn-header.dtsi */
> > +
> > +#undef LABEL
> > +#undef _LABEL
> > +#undef __LABEL
> > +
> > +#undef PMIC_SID
> > +#undef PMIC_LABEL
> > diff --git a/arch/arm64/boot/dts/qcom/pmic-dyn-header.dtsi b/arch/arm64/boot/dts/qcom/pmic-dyn-header.dtsi
> > new file mode 100644
> > index 000000000000..75f0448568bd
> > --- /dev/null
> > +++ b/arch/arm64/boot/dts/qcom/pmic-dyn-header.dtsi
> > @@ -0,0 +1,14 @@
> > +// SPDX-License-Identifier: BSD-3-Clause
> > +/*
> > + * Copyright (c) 2023, Linaro Limited
> > + */
> > +
> > +/*
> > + * Preprocessor symbols to assist in describing PMICs which have configurable
> > + * SID. All effects of this header (or its parameters) must be reverted in
> > + * pmic-dyn-footer.dtsi.
> > + */
> > +
> > +#define LABEL(name) _LABEL(PMIC_LABEL, name)
> > +#define _LABEL(pmic, name) __LABEL(pmic, name)
> > +#define __LABEL(pmic, name) pmic ## _ ## name
> #define PMIC_LABEL pmk8350
> #define LABEL(name) PMIC_LABEL##_##name

This doesn't work. Using LABEL(test) results in PMIC_LABEL_test.

>
> ?
>
> Konrad
> > diff --git a/arch/arm64/boot/dts/qcom/pmk8350.dtsi b/arch/arm64/boot/dts/qcom/pmk8350.dtsi
> > index 02e7518ab57b..f26ff3daf119 100644
> > --- a/arch/arm64/boot/dts/qcom/pmk8350.dtsi
> > +++ b/arch/arm64/boot/dts/qcom/pmk8350.dtsi
> > @@ -13,33 +13,39 @@
> >       #define PMIC_SID 0
> >  #endif
> >
> > +#ifndef PMIC_LABEL
> > +#define PMIC_LABEL pmk8350
> > +#endif
> > +
> > +#include "pmic-dyn-header.dtsi"
> > +
> >  &spmi_bus {
> > -     pmk8350: pmic@PMIC_SID {
> > +     PMIC_LABEL: pmic@PMIC_SID {
> >               compatible = "qcom,pmk8350", "qcom,spmi-pmic";
> >               reg = <PMIC_SID SPMI_USID>;
> >               #address-cells = <1>;
> >               #size-cells = <0>;
> >
> > -             pmk8350_pon: pon@1300 {
> > +             LABEL(pon): pon@1300 {
> >                       compatible = "qcom,pmk8350-pon";
> >                       reg = <0x1300>, <0x800>;
> >                       reg-names = "hlos", "pbs";
> >
> > -                     pmk8350_pon_pwrkey: pwrkey {
> > +                     LABEL(pon_pwrkey): pwrkey {
> >                               compatible = "qcom,pmk8350-pwrkey";
> >                               interrupts = <PMIC_SID 0x13 0x7 IRQ_TYPE_EDGE_BOTH>;
> >                               linux,code = <KEY_POWER>;
> >                               status = "disabled";
> >                       };
> >
> > -                     pmk8350_pon_resin: resin {
> > +                     LABEL(pon_resin): resin {
> >                               compatible = "qcom,pmk8350-resin";
> >                               interrupts = <PMIC_SID 0x13 0x6 IRQ_TYPE_EDGE_BOTH>;
> >                               status = "disabled";
> >                       };
> >               };
> >
> > -             pmk8350_vadc: adc@3100 {
> > +             LABEL(vadc): adc@3100 {
> >                       compatible = "qcom,spmi-adc7";
> >                       reg = <0x3100>;
> >                       #address-cells = <1>;
> > @@ -48,7 +54,7 @@ pmk8350_vadc: adc@3100 {
> >                       #io-channel-cells = <1>;
> >               };
> >
> > -             pmk8350_adc_tm: adc-tm@3400 {
> > +             LABEL(adc_tm): adc-tm@3400 {
> >                       compatible = "qcom,adc-tm7";
> >                       reg = <0x3400>;
> >                       interrupts = <PMIC_SID 0x34 0x0 IRQ_TYPE_EDGE_RISING>;
> > @@ -58,7 +64,7 @@ pmk8350_adc_tm: adc-tm@3400 {
> >                       status = "disabled";
> >               };
> >
> > -             pmk8350_rtc: rtc@6100 {
> > +             LABEL(rtc): rtc@6100 {
> >                       compatible = "qcom,pmk8350-rtc";
> >                       reg = <0x6100>, <0x6200>;
> >                       reg-names = "rtc", "alarm";
> > @@ -66,7 +72,7 @@ pmk8350_rtc: rtc@6100 {
> >                       status = "disabled";
> >               };
> >
> > -             pmk8350_sdam_6: nvram@8500 {
> > +             LABEL(sdam_6): nvram@8500 {
> >                       compatible = "qcom,spmi-sdam";
> >                       reg = <0x8500>;
> >                       #address-cells = <1>;
> > @@ -75,11 +81,11 @@ pmk8350_sdam_6: nvram@8500 {
> >                       status = "disabled";
> >               };
> >
> > -             pmk8350_gpios: gpio@b000 {
> > +             LABEL(gpios): gpio@b000 {
> >                       compatible = "qcom,pmk8350-gpio", "qcom,spmi-gpio";
> >                       reg = <0xb000>;
> >                       gpio-controller;
> > -                     gpio-ranges = <&pmk8350_gpios 0 0 4>;
> > +                     gpio-ranges = <&LABEL(gpios) 0 0 4>;
> >                       #gpio-cells = <2>;
> >                       interrupt-controller;
> >                       #interrupt-cells = <2>;
> > @@ -87,4 +93,4 @@ pmk8350_gpios: gpio@b000 {
> >       };
> >  };
> >
> > -#undef PMIC_SID
> > +#include "pmic-dyn-footer.dtsi"
diff mbox series

Patch

diff --git a/arch/arm64/boot/dts/qcom/pmic-dyn-footer.dtsi b/arch/arm64/boot/dts/qcom/pmic-dyn-footer.dtsi
new file mode 100644
index 000000000000..1c81269f0783
--- /dev/null
+++ b/arch/arm64/boot/dts/qcom/pmic-dyn-footer.dtsi
@@ -0,0 +1,13 @@ 
+// SPDX-License-Identifier: BSD-3-Clause
+/*
+ * Copyright (c) 2023, Linaro Limited
+ */
+
+/* cleanly revert the effects pmic-dyn-header.dtsi */
+
+#undef LABEL
+#undef _LABEL
+#undef __LABEL
+
+#undef PMIC_SID
+#undef PMIC_LABEL
diff --git a/arch/arm64/boot/dts/qcom/pmic-dyn-header.dtsi b/arch/arm64/boot/dts/qcom/pmic-dyn-header.dtsi
new file mode 100644
index 000000000000..75f0448568bd
--- /dev/null
+++ b/arch/arm64/boot/dts/qcom/pmic-dyn-header.dtsi
@@ -0,0 +1,14 @@ 
+// SPDX-License-Identifier: BSD-3-Clause
+/*
+ * Copyright (c) 2023, Linaro Limited
+ */
+
+/*
+ * Preprocessor symbols to assist in describing PMICs which have configurable
+ * SID. All effects of this header (or its parameters) must be reverted in
+ * pmic-dyn-footer.dtsi.
+ */
+
+#define LABEL(name) _LABEL(PMIC_LABEL, name)
+#define _LABEL(pmic, name) __LABEL(pmic, name)
+#define __LABEL(pmic, name) pmic ## _ ## name
diff --git a/arch/arm64/boot/dts/qcom/pmk8350.dtsi b/arch/arm64/boot/dts/qcom/pmk8350.dtsi
index 02e7518ab57b..f26ff3daf119 100644
--- a/arch/arm64/boot/dts/qcom/pmk8350.dtsi
+++ b/arch/arm64/boot/dts/qcom/pmk8350.dtsi
@@ -13,33 +13,39 @@ 
 	#define PMIC_SID 0
 #endif
 
+#ifndef PMIC_LABEL
+#define PMIC_LABEL pmk8350
+#endif
+
+#include "pmic-dyn-header.dtsi"
+
 &spmi_bus {
-	pmk8350: pmic@PMIC_SID {
+	PMIC_LABEL: pmic@PMIC_SID {
 		compatible = "qcom,pmk8350", "qcom,spmi-pmic";
 		reg = <PMIC_SID SPMI_USID>;
 		#address-cells = <1>;
 		#size-cells = <0>;
 
-		pmk8350_pon: pon@1300 {
+		LABEL(pon): pon@1300 {
 			compatible = "qcom,pmk8350-pon";
 			reg = <0x1300>, <0x800>;
 			reg-names = "hlos", "pbs";
 
-			pmk8350_pon_pwrkey: pwrkey {
+			LABEL(pon_pwrkey): pwrkey {
 				compatible = "qcom,pmk8350-pwrkey";
 				interrupts = <PMIC_SID 0x13 0x7 IRQ_TYPE_EDGE_BOTH>;
 				linux,code = <KEY_POWER>;
 				status = "disabled";
 			};
 
-			pmk8350_pon_resin: resin {
+			LABEL(pon_resin): resin {
 				compatible = "qcom,pmk8350-resin";
 				interrupts = <PMIC_SID 0x13 0x6 IRQ_TYPE_EDGE_BOTH>;
 				status = "disabled";
 			};
 		};
 
-		pmk8350_vadc: adc@3100 {
+		LABEL(vadc): adc@3100 {
 			compatible = "qcom,spmi-adc7";
 			reg = <0x3100>;
 			#address-cells = <1>;
@@ -48,7 +54,7 @@  pmk8350_vadc: adc@3100 {
 			#io-channel-cells = <1>;
 		};
 
-		pmk8350_adc_tm: adc-tm@3400 {
+		LABEL(adc_tm): adc-tm@3400 {
 			compatible = "qcom,adc-tm7";
 			reg = <0x3400>;
 			interrupts = <PMIC_SID 0x34 0x0 IRQ_TYPE_EDGE_RISING>;
@@ -58,7 +64,7 @@  pmk8350_adc_tm: adc-tm@3400 {
 			status = "disabled";
 		};
 
-		pmk8350_rtc: rtc@6100 {
+		LABEL(rtc): rtc@6100 {
 			compatible = "qcom,pmk8350-rtc";
 			reg = <0x6100>, <0x6200>;
 			reg-names = "rtc", "alarm";
@@ -66,7 +72,7 @@  pmk8350_rtc: rtc@6100 {
 			status = "disabled";
 		};
 
-		pmk8350_sdam_6: nvram@8500 {
+		LABEL(sdam_6): nvram@8500 {
 			compatible = "qcom,spmi-sdam";
 			reg = <0x8500>;
 			#address-cells = <1>;
@@ -75,11 +81,11 @@  pmk8350_sdam_6: nvram@8500 {
 			status = "disabled";
 		};
 
-		pmk8350_gpios: gpio@b000 {
+		LABEL(gpios): gpio@b000 {
 			compatible = "qcom,pmk8350-gpio", "qcom,spmi-gpio";
 			reg = <0xb000>;
 			gpio-controller;
-			gpio-ranges = <&pmk8350_gpios 0 0 4>;
+			gpio-ranges = <&LABEL(gpios) 0 0 4>;
 			#gpio-cells = <2>;
 			interrupt-controller;
 			#interrupt-cells = <2>;
@@ -87,4 +93,4 @@  pmk8350_gpios: gpio@b000 {
 	};
 };
 
-#undef PMIC_SID
+#include "pmic-dyn-footer.dtsi"