Message ID | 20211112055410.21418-2-james.lo@mediatek.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Add SPMI support for Mediatek SoC IC | expand |
On Fri, 12 Nov 2021 13:54:08 +0800, James Lo wrote: > The constraint of reg may larger than 1, so we modify to > 'minItem: 1' and 'maxItem: 2'. > And adds documentation for the SPMI controller found on > Mediatek SoCs. > > Merge [RESEND,v13,2/4] into [RESEND,v13,1/4] for fix yaml > error. > [RESEND,v13,1/4] : > dt-bindings: spmi: modify the constraint of reg property > [RESEND,v13,2/4] : > dt-bindings: spmi: document binding for the Mediatek SPMI > controller > > Signed-off-by: James Lo <james.lo@mediatek.com> > Signed-off-by: Hsin-Hsiung Wang <hsin-hsiung.wang@mediatek.com> > --- > .../bindings/spmi/mtk,spmi-mtk-pmif.yaml | 76 +++++++++++++++++++ > .../devicetree/bindings/spmi/spmi.yaml | 3 +- > 2 files changed, 78 insertions(+), 1 deletion(-) > create mode 100644 Documentation/devicetree/bindings/spmi/mtk,spmi-mtk-pmif.yaml > Running 'make dtbs_check' with the schema in this patch gives the following warnings. Consider if they are expected or the schema is incorrect. These may not be new warnings. Note that it is not yet a requirement to have 0 warnings for dtbs_check. This will change in the future. Full log is available here: https://patchwork.ozlabs.org/patch/1554153 spmi@1c40000: reg: [[29622272, 4352], [31457280, 33554432], [65011712, 1048576], [66060288, 655360], [29401088, 155648]] is too long arch/arm64/boot/dts/qcom/sm6125-sony-xperia-seine-pdx201.dt.yaml spmi@200f000: reg: [[33615872, 4096], [37748736, 4194304], [46137344, 4194304], [58720256, 2097152], [33595392, 8448]] is too long arch/arm64/boot/dts/qcom/apq8016-sbc.dt.yaml arch/arm64/boot/dts/qcom/msm8916-alcatel-idol347.dt.yaml arch/arm64/boot/dts/qcom/msm8916-asus-z00l.dt.yaml arch/arm64/boot/dts/qcom/msm8916-huawei-g7.dt.yaml arch/arm64/boot/dts/qcom/msm8916-longcheer-l8150.dt.yaml arch/arm64/boot/dts/qcom/msm8916-longcheer-l8910.dt.yaml arch/arm64/boot/dts/qcom/msm8916-mtp.dt.yaml arch/arm64/boot/dts/qcom/msm8916-samsung-a3u-eur.dt.yaml arch/arm64/boot/dts/qcom/msm8916-samsung-a5u-eur.dt.yaml arch/arm64/boot/dts/qcom/msm8916-wingtech-wt88047.dt.yaml spmi@200f000: reg: [[33615872, 4096], [37748736, 8388608], [46137344, 8388608], [58720256, 2097152], [33595392, 8448]] is too long arch/arm64/boot/dts/qcom/qcs404-evb-1000.dt.yaml arch/arm64/boot/dts/qcom/qcs404-evb-4000.dt.yaml spmi@800f000: reg: [[134279168, 4096], [138412032, 16777216], [155189248, 16777216], [171966464, 2228224], [134258688, 12288]] is too long arch/arm64/boot/dts/qcom/msm8998-asus-novago-tp370ql.dt.yaml arch/arm64/boot/dts/qcom/msm8998-hp-envy-x2.dt.yaml arch/arm64/boot/dts/qcom/msm8998-lenovo-miix-630.dt.yaml arch/arm64/boot/dts/qcom/msm8998-mtp.dt.yaml arch/arm64/boot/dts/qcom/msm8998-oneplus-cheeseburger.dt.yaml arch/arm64/boot/dts/qcom/msm8998-oneplus-dumpling.dt.yaml arch/arm64/boot/dts/qcom/sdm630-sony-xperia-ganges-kirin.dt.yaml arch/arm64/boot/dts/qcom/sdm630-sony-xperia-nile-discovery.dt.yaml arch/arm64/boot/dts/qcom/sdm630-sony-xperia-nile-pioneer.dt.yaml arch/arm64/boot/dts/qcom/sdm630-sony-xperia-nile-voyager.dt.yaml arch/arm64/boot/dts/qcom/sdm636-sony-xperia-ganges-mermaid.dt.yaml arch/arm64/boot/dts/qcom/sdm660-xiaomi-lavender.dt.yaml spmi@c440000: #address-cells:0:0: 2 was expected arch/arm64/boot/dts/qcom/sc7180-idp.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-coachz-r1.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-coachz-r1-lte.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-coachz-r3.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-coachz-r3-lte.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-limozeen.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-limozeen-nots.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-limozeen-nots-r4.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r0.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r1.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r1-kb.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r1-lte.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r3.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r3-kb.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r3-lte.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-pompom-r1.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-pompom-r1-lte.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-pompom-r2.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-pompom-r2-lte.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-pompom-r3.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-pompom-r3-lte.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-r1.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-r1-lte.dt.yaml arch/arm64/boot/dts/qcom/sc7280-idp2.dt.yaml arch/arm64/boot/dts/qcom/sc7280-idp.dt.yaml spmi@c440000: reg: [[0, 205783040, 0, 4352], [0, 207618048, 0, 33554432], [0, 241172480, 0, 1048576], [0, 242221056, 0, 655360], [0, 205561856, 0, 155648]] is too long arch/arm64/boot/dts/qcom/qrb5165-rb5.dt.yaml arch/arm64/boot/dts/qcom/sa8155p-adp.dt.yaml arch/arm64/boot/dts/qcom/sc7180-idp.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-coachz-r1.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-coachz-r1-lte.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-coachz-r3.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-coachz-r3-lte.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-limozeen.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-limozeen-nots.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-limozeen-nots-r4.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r0.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r1.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r1-kb.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r1-lte.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r3.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r3-kb.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r3-lte.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-pompom-r1.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-pompom-r1-lte.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-pompom-r2.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-pompom-r2-lte.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-pompom-r3.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-pompom-r3-lte.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-r1.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-r1-lte.dt.yaml arch/arm64/boot/dts/qcom/sc7280-idp2.dt.yaml arch/arm64/boot/dts/qcom/sc7280-idp.dt.yaml arch/arm64/boot/dts/qcom/sdm845-cheza-r1.dt.yaml arch/arm64/boot/dts/qcom/sdm845-cheza-r2.dt.yaml arch/arm64/boot/dts/qcom/sdm845-cheza-r3.dt.yaml arch/arm64/boot/dts/qcom/sdm845-db845c.dt.yaml arch/arm64/boot/dts/qcom/sdm845-mtp.dt.yaml arch/arm64/boot/dts/qcom/sdm845-oneplus-enchilada.dt.yaml arch/arm64/boot/dts/qcom/sdm845-oneplus-fajita.dt.yaml arch/arm64/boot/dts/qcom/sdm845-xiaomi-beryllium.dt.yaml arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dt.yaml arch/arm64/boot/dts/qcom/sm8150-hdk.dt.yaml arch/arm64/boot/dts/qcom/sm8150-microsoft-surface-duo.dt.yaml arch/arm64/boot/dts/qcom/sm8150-mtp.dt.yaml arch/arm64/boot/dts/qcom/sm8150-sony-xperia-kumano-bahamut.dt.yaml arch/arm64/boot/dts/qcom/sm8150-sony-xperia-kumano-griffin.dt.yaml arch/arm64/boot/dts/qcom/sm8250-hdk.dt.yaml arch/arm64/boot/dts/qcom/sm8250-mtp.dt.yaml arch/arm64/boot/dts/qcom/sm8250-sony-xperia-edo-pdx203.dt.yaml arch/arm64/boot/dts/qcom/sm8250-sony-xperia-edo-pdx206.dt.yaml arch/arm64/boot/dts/qcom/sm8350-hdk.dt.yaml arch/arm64/boot/dts/qcom/sm8350-mtp.dt.yaml spmi@c440000: #size-cells:0:0: 0 was expected arch/arm64/boot/dts/qcom/sc7180-idp.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-coachz-r1.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-coachz-r1-lte.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-coachz-r3.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-coachz-r3-lte.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-limozeen.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-limozeen-nots.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-limozeen-nots-r4.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r0.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r1.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r1-kb.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r1-lte.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r3.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r3-kb.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r3-lte.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-pompom-r1.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-pompom-r1-lte.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-pompom-r2.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-pompom-r2-lte.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-pompom-r3.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-pompom-r3-lte.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-r1.dt.yaml arch/arm64/boot/dts/qcom/sc7180-trogdor-r1-lte.dt.yaml arch/arm64/boot/dts/qcom/sc7280-idp2.dt.yaml arch/arm64/boot/dts/qcom/sc7280-idp.dt.yaml spmi@fc4c0000: reg: [[4232900608, 4096], [4232884224, 4096], [4232880128, 4096]] is too long arch/arm64/boot/dts/qcom/apq8094-sony-xperia-kitakami-karin_windy.dt.yaml arch/arm64/boot/dts/qcom/msm8992-bullhead-rev-101.dt.yaml arch/arm64/boot/dts/qcom/msm8992-msft-lumia-octagon-talkman.dt.yaml arch/arm64/boot/dts/qcom/msm8992-xiaomi-libra.dt.yaml arch/arm64/boot/dts/qcom/msm8994-angler-rev-101.dt.yaml arch/arm64/boot/dts/qcom/msm8994-msft-lumia-octagon-cityman.dt.yaml arch/arm64/boot/dts/qcom/msm8994-sony-xperia-kitakami-ivy.dt.yaml arch/arm64/boot/dts/qcom/msm8994-sony-xperia-kitakami-karin.dt.yaml arch/arm64/boot/dts/qcom/msm8994-sony-xperia-kitakami-satsuki.dt.yaml arch/arm64/boot/dts/qcom/msm8994-sony-xperia-kitakami-sumire.dt.yaml arch/arm64/boot/dts/qcom/msm8994-sony-xperia-kitakami-suzuran.dt.yaml spmi@fc4cf000: reg: [[4232900608, 4096], [4232884224, 4096], [4232880128, 4096]] is too long arch/arm/boot/dts/qcom-apq8074-dragonboard.dt.yaml arch/arm/boot/dts/qcom-apq8084-ifc6540.dt.yaml arch/arm/boot/dts/qcom-apq8084-mtp.dt.yaml arch/arm/boot/dts/qcom-msm8974-fairphone-fp2.dt.yaml arch/arm/boot/dts/qcom-msm8974-lge-nexus5-hammerhead.dt.yaml arch/arm/boot/dts/qcom-msm8974-samsung-klte.dt.yaml arch/arm/boot/dts/qcom-msm8974-sony-xperia-amami.dt.yaml arch/arm/boot/dts/qcom-msm8974-sony-xperia-castor.dt.yaml arch/arm/boot/dts/qcom-msm8974-sony-xperia-honami.dt.yaml
On Fri, Nov 12, 2021 at 01:54:08PM +0800, James Lo wrote: > The constraint of reg may larger than 1, so we modify to > 'minItem: 1' and 'maxItem: 2'. > And adds documentation for the SPMI controller found on > Mediatek SoCs. > > Merge [RESEND,v13,2/4] into [RESEND,v13,1/4] for fix yaml > error. > [RESEND,v13,1/4] : > dt-bindings: spmi: modify the constraint of reg property > [RESEND,v13,2/4] : > dt-bindings: spmi: document binding for the Mediatek SPMI > controller Combining is not the right thing to do. > > Signed-off-by: James Lo <james.lo@mediatek.com> > Signed-off-by: Hsin-Hsiung Wang <hsin-hsiung.wang@mediatek.com> > --- > .../bindings/spmi/mtk,spmi-mtk-pmif.yaml | 76 +++++++++++++++++++ > .../devicetree/bindings/spmi/spmi.yaml | 3 +- > 2 files changed, 78 insertions(+), 1 deletion(-) > create mode 100644 Documentation/devicetree/bindings/spmi/mtk,spmi-mtk-pmif.yaml > > diff --git a/Documentation/devicetree/bindings/spmi/mtk,spmi-mtk-pmif.yaml b/Documentation/devicetree/bindings/spmi/mtk,spmi-mtk-pmif.yaml > new file mode 100644 > index 000000000000..2445c5e0b0ef > --- /dev/null > +++ b/Documentation/devicetree/bindings/spmi/mtk,spmi-mtk-pmif.yaml > @@ -0,0 +1,76 @@ > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/spmi/mtk,spmi-mtk-pmif.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Mediatek SPMI Controller Device Tree Bindings > + > +maintainers: > + - Hsin-Hsiung Wang <hsin-hsiung.wang@mediatek.com> > + > +description: |+ > + On MediaTek SoCs the PMIC is connected via SPMI and the controller allows > + for multiple SoCs to control a single SPMI master. > + > +allOf: > + - $ref: "spmi.yaml" > + > +properties: > + compatible: > + enum: > + - mediatek,mt6873-spmi > + - mediatek,mt8195-spmi > + > + reg: > + maxItems: 2 > + > + reg-names: > + items: > + - const: pmif > + - const: spmimst > + > + clocks: > + minItems: 3 > + maxItems: 3 > + > + clock-names: > + items: > + - const: pmif_sys_ck > + - const: pmif_tmr_ck > + - const: spmimst_clk_mux > + > + assigned-clocks: > + maxItems: 1 > + > + assigned-clock-parents: > + maxItems: 1 > + > +required: > + - compatible > + - reg > + - reg-names > + - clocks > + - clock-names > + > +unevaluatedProperties: false > + > +examples: > + - | > + #include <dt-bindings/clock/mt8192-clk.h> > + > + spmi: spmi@10027000 { > + compatible = "mediatek,mt6873-spmi"; > + reg = <0x10027000 0xe00>, > + <0x10029000 0x100>; > + reg-names = "pmif", "spmimst"; > + clocks = <&infracfg CLK_INFRA_PMIC_AP>, > + <&infracfg CLK_INFRA_PMIC_TMR>, > + <&topckgen CLK_TOP_SPMI_MST_SEL>; > + clock-names = "pmif_sys_ck", > + "pmif_tmr_ck", > + "spmimst_clk_mux"; > + assigned-clocks = <&topckgen CLK_TOP_PWRAP_ULPOSC_SEL>; > + assigned-clock-parents = <&topckgen CLK_TOP_OSC_D10>; > + }; > +... > diff --git a/Documentation/devicetree/bindings/spmi/spmi.yaml b/Documentation/devicetree/bindings/spmi/spmi.yaml > index 1d243faef2f8..f29183a45adc 100644 > --- a/Documentation/devicetree/bindings/spmi/spmi.yaml > +++ b/Documentation/devicetree/bindings/spmi/spmi.yaml > @@ -25,7 +25,8 @@ properties: > pattern: "^spmi@.*" > > reg: > - maxItems: 1 > + maxItems: 2 > + minItems: 1 'reg' is controller specific so we shouldn't even be specifying it here. Just remove it. > > "#address-cells": > const: 2 > -- > 2.18.0 > >
diff --git a/Documentation/devicetree/bindings/spmi/mtk,spmi-mtk-pmif.yaml b/Documentation/devicetree/bindings/spmi/mtk,spmi-mtk-pmif.yaml new file mode 100644 index 000000000000..2445c5e0b0ef --- /dev/null +++ b/Documentation/devicetree/bindings/spmi/mtk,spmi-mtk-pmif.yaml @@ -0,0 +1,76 @@ +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/spmi/mtk,spmi-mtk-pmif.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Mediatek SPMI Controller Device Tree Bindings + +maintainers: + - Hsin-Hsiung Wang <hsin-hsiung.wang@mediatek.com> + +description: |+ + On MediaTek SoCs the PMIC is connected via SPMI and the controller allows + for multiple SoCs to control a single SPMI master. + +allOf: + - $ref: "spmi.yaml" + +properties: + compatible: + enum: + - mediatek,mt6873-spmi + - mediatek,mt8195-spmi + + reg: + maxItems: 2 + + reg-names: + items: + - const: pmif + - const: spmimst + + clocks: + minItems: 3 + maxItems: 3 + + clock-names: + items: + - const: pmif_sys_ck + - const: pmif_tmr_ck + - const: spmimst_clk_mux + + assigned-clocks: + maxItems: 1 + + assigned-clock-parents: + maxItems: 1 + +required: + - compatible + - reg + - reg-names + - clocks + - clock-names + +unevaluatedProperties: false + +examples: + - | + #include <dt-bindings/clock/mt8192-clk.h> + + spmi: spmi@10027000 { + compatible = "mediatek,mt6873-spmi"; + reg = <0x10027000 0xe00>, + <0x10029000 0x100>; + reg-names = "pmif", "spmimst"; + clocks = <&infracfg CLK_INFRA_PMIC_AP>, + <&infracfg CLK_INFRA_PMIC_TMR>, + <&topckgen CLK_TOP_SPMI_MST_SEL>; + clock-names = "pmif_sys_ck", + "pmif_tmr_ck", + "spmimst_clk_mux"; + assigned-clocks = <&topckgen CLK_TOP_PWRAP_ULPOSC_SEL>; + assigned-clock-parents = <&topckgen CLK_TOP_OSC_D10>; + }; +... diff --git a/Documentation/devicetree/bindings/spmi/spmi.yaml b/Documentation/devicetree/bindings/spmi/spmi.yaml index 1d243faef2f8..f29183a45adc 100644 --- a/Documentation/devicetree/bindings/spmi/spmi.yaml +++ b/Documentation/devicetree/bindings/spmi/spmi.yaml @@ -25,7 +25,8 @@ properties: pattern: "^spmi@.*" reg: - maxItems: 1 + maxItems: 2 + minItems: 1 "#address-cells": const: 2