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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, 3 Apr 2023 at 13:14, Konrad Dybcio <konrad.dybcio@xxxxxxxxxx> 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@xxxxxxxxxx>
> > ---
> >  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"



-- 
With best wishes
Dmitry



[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux