From: Rob Herring <robh@kernel.org> To: Roger Lu <roger.lu@mediatek.com> Cc: Kevin Hilman <khilman@kernel.org>, Nicolas Boichat <drinkcat@google.com>, Stephen Boyd <sboyd@kernel.org>, Fan Chen <fan.chen@mediatek.com>, HenryC Chen <HenryC.Chen@mediatek.com>, yt.lee@mediatek.com, Angus Lin <Angus.Lin@mediatek.com>, Mark Rutland <mark.rutland@arm.com>, Matthias Brugger <matthias.bgg@gmail.com>, Nishanth Menon <nm@ti.com>, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org Subject: Re: [PATCH v5 1/3] dt-bindings: soc: add mtk svs dt-bindings Date: Mon, 30 Sep 2019 08:35:48 -0500 [thread overview] Message-ID: <20190930133548.GA24574@bogus> (raw) In-Reply-To: <20190906100514.30803-2-roger.lu@mediatek.com> On Fri, Sep 06, 2019 at 06:05:13PM +0800, Roger Lu wrote: > Document the binding for enabling mtk svs on MediaTek SoC. > > Signed-off-by: Roger Lu <roger.lu@mediatek.com> > --- > .../devicetree/bindings/power/mtk-svs.txt | 88 +++++++++++++++++++ > 1 file changed, 88 insertions(+) > create mode 100644 Documentation/devicetree/bindings/power/mtk-svs.txt > > diff --git a/Documentation/devicetree/bindings/power/mtk-svs.txt b/Documentation/devicetree/bindings/power/mtk-svs.txt > new file mode 100644 > index 000000000000..6a71992ef162 > --- /dev/null > +++ b/Documentation/devicetree/bindings/power/mtk-svs.txt > @@ -0,0 +1,88 @@ > +* Mediatek Smart Voltage Scaling (MTK SVS) > + > +This describes the device tree binding for the MTK SVS controller (bank) > +which helps provide the optimized CPU/GPU/CCI voltages. This device also > +needs thermal data to calculate thermal slope for accurately compensate > +the voltages when temperature change. > + > +Required properties: > +- compatible: > + - "mediatek,mt8183-svs" : For MT8183 family of SoCs > +- reg: Address range of the MTK SVS controller. > +- interrupts: IRQ for the MTK SVS controller. > +- clocks, clock-names: Clocks needed for the svs controller. required > + clocks are: > + "main_clk": Main clock needed for register access '_clk' is redundant. > +- nvmem-cells: Phandle to the calibration data provided by a nvmem device. > +- nvmem-cell-names: Should be "svs-calibration-data" and "calibration-data" > + > +Subnodes: > +- svs_cpu_little: SVS bank device node of little CPU > + compatible: "mediatek,mt8183-svs-cpu-little" > + operating-points-v2: OPP table hooked by SVS little CPU bank. > + SVS will optimze this OPP table voltage part. > + vcpu-little-supply: PMIC buck of little CPU > +- svs_cpu_big: SVS bank device node of big CPU > + compatible: "mediatek,mt8183-svs-cpu-big" > + operating-points-v2: OPP table hooked by SVS big CPU bank. > + SVS will optimze this OPP table voltage part. > + vcpu-big-supply: PMIC buck of big CPU > +- svs_cci: SVS bank device node of CCI > + compatible: "mediatek,mt8183-svs-cci" > + operating-points-v2: OPP table hooked by SVS CCI bank. > + SVS will optimze this OPP table voltage part. > + vcci-supply: PMIC buck of CCI > +- svs_gpu: SVS bank device node of GPU > + compatible: "mediatek,mt8183-svs-gpu" > + operating-points-v2: OPP table hooked by SVS GPU bank. > + SVS will optimze this OPP table voltage part. > + vgpu-spply: PMIC buck of GPU > + > +Example: > + > + svs: svs@1100b000 { > + compatible = "mediatek,mt8183-svs"; > + reg = <0 0x1100b000 0 0x1000>; > + interrupts = <GIC_SPI 127 IRQ_TYPE_LEVEL_LOW 0>; GIC interrupts are 3 cells, you have 4. > + clocks = <&infracfg CLK_INFRA_THERM>; > + clock-names = "main_clk"; > + nvmem-cells = <&svs_calibration>, <&thermal_calibration>; > + nvmem-cell-names = "svs-calibration-data", "calibration-data"; > + > + svs_cpu_little: svs_cpu_little { Don't use '_' in node names. > + compatible = "mediatek,mt8183-svs-cpu-little"; > + operating-points-v2 = <&cluster0_opp>; > + }; > + > + svs_cpu_big: svs_cpu_big { > + compatible = "mediatek,mt8183-svs-cpu-big"; > + operating-points-v2 = <&cluster1_opp>; > + }; > + > + svs_cci: svs_cci { > + compatible = "mediatek,mt8183-svs-cci"; > + operating-points-v2 = <&cci_opp>; > + }; > + > + svs_gpu: svs_gpu { > + compatible = "mediatek,mt8183-svs-gpu"; > + power-domains = <&scpsys MT8183_POWER_DOMAIN_MFG_2D>; > + operating-points-v2 = <&gpu_opp_table>; > + }; > + }; > + > + &svs_cpu_little { > + vcpu-little-supply = <&mt6358_vproc12_reg>; It's already defined to have OPP and supply in the cpu nodes. Parse them to get this information rather than duplicating it here. The same should apply to the CCI and GPU. Rob
WARNING: multiple messages have this Message-ID (diff)
From: Rob Herring <robh@kernel.org> To: Roger Lu <roger.lu@mediatek.com> Cc: Mark Rutland <mark.rutland@arm.com>, Nicolas Boichat <drinkcat@google.com>, Angus Lin <Angus.Lin@mediatek.com>, Kevin Hilman <khilman@kernel.org>, Stephen Boyd <sboyd@kernel.org>, linux-pm@vger.kernel.org, linux-kernel@vger.kernel.org, HenryC Chen <HenryC.Chen@mediatek.com>, yt.lee@mediatek.com, Fan Chen <fan.chen@mediatek.com>, devicetree@vger.kernel.org, linux-mediatek@lists.infradead.org, Matthias Brugger <matthias.bgg@gmail.com>, Nishanth Menon <nm@ti.com>, linux-arm-kernel@lists.infradead.org Subject: Re: [PATCH v5 1/3] dt-bindings: soc: add mtk svs dt-bindings Date: Mon, 30 Sep 2019 08:35:48 -0500 [thread overview] Message-ID: <20190930133548.GA24574@bogus> (raw) In-Reply-To: <20190906100514.30803-2-roger.lu@mediatek.com> On Fri, Sep 06, 2019 at 06:05:13PM +0800, Roger Lu wrote: > Document the binding for enabling mtk svs on MediaTek SoC. > > Signed-off-by: Roger Lu <roger.lu@mediatek.com> > --- > .../devicetree/bindings/power/mtk-svs.txt | 88 +++++++++++++++++++ > 1 file changed, 88 insertions(+) > create mode 100644 Documentation/devicetree/bindings/power/mtk-svs.txt > > diff --git a/Documentation/devicetree/bindings/power/mtk-svs.txt b/Documentation/devicetree/bindings/power/mtk-svs.txt > new file mode 100644 > index 000000000000..6a71992ef162 > --- /dev/null > +++ b/Documentation/devicetree/bindings/power/mtk-svs.txt > @@ -0,0 +1,88 @@ > +* Mediatek Smart Voltage Scaling (MTK SVS) > + > +This describes the device tree binding for the MTK SVS controller (bank) > +which helps provide the optimized CPU/GPU/CCI voltages. This device also > +needs thermal data to calculate thermal slope for accurately compensate > +the voltages when temperature change. > + > +Required properties: > +- compatible: > + - "mediatek,mt8183-svs" : For MT8183 family of SoCs > +- reg: Address range of the MTK SVS controller. > +- interrupts: IRQ for the MTK SVS controller. > +- clocks, clock-names: Clocks needed for the svs controller. required > + clocks are: > + "main_clk": Main clock needed for register access '_clk' is redundant. > +- nvmem-cells: Phandle to the calibration data provided by a nvmem device. > +- nvmem-cell-names: Should be "svs-calibration-data" and "calibration-data" > + > +Subnodes: > +- svs_cpu_little: SVS bank device node of little CPU > + compatible: "mediatek,mt8183-svs-cpu-little" > + operating-points-v2: OPP table hooked by SVS little CPU bank. > + SVS will optimze this OPP table voltage part. > + vcpu-little-supply: PMIC buck of little CPU > +- svs_cpu_big: SVS bank device node of big CPU > + compatible: "mediatek,mt8183-svs-cpu-big" > + operating-points-v2: OPP table hooked by SVS big CPU bank. > + SVS will optimze this OPP table voltage part. > + vcpu-big-supply: PMIC buck of big CPU > +- svs_cci: SVS bank device node of CCI > + compatible: "mediatek,mt8183-svs-cci" > + operating-points-v2: OPP table hooked by SVS CCI bank. > + SVS will optimze this OPP table voltage part. > + vcci-supply: PMIC buck of CCI > +- svs_gpu: SVS bank device node of GPU > + compatible: "mediatek,mt8183-svs-gpu" > + operating-points-v2: OPP table hooked by SVS GPU bank. > + SVS will optimze this OPP table voltage part. > + vgpu-spply: PMIC buck of GPU > + > +Example: > + > + svs: svs@1100b000 { > + compatible = "mediatek,mt8183-svs"; > + reg = <0 0x1100b000 0 0x1000>; > + interrupts = <GIC_SPI 127 IRQ_TYPE_LEVEL_LOW 0>; GIC interrupts are 3 cells, you have 4. > + clocks = <&infracfg CLK_INFRA_THERM>; > + clock-names = "main_clk"; > + nvmem-cells = <&svs_calibration>, <&thermal_calibration>; > + nvmem-cell-names = "svs-calibration-data", "calibration-data"; > + > + svs_cpu_little: svs_cpu_little { Don't use '_' in node names. > + compatible = "mediatek,mt8183-svs-cpu-little"; > + operating-points-v2 = <&cluster0_opp>; > + }; > + > + svs_cpu_big: svs_cpu_big { > + compatible = "mediatek,mt8183-svs-cpu-big"; > + operating-points-v2 = <&cluster1_opp>; > + }; > + > + svs_cci: svs_cci { > + compatible = "mediatek,mt8183-svs-cci"; > + operating-points-v2 = <&cci_opp>; > + }; > + > + svs_gpu: svs_gpu { > + compatible = "mediatek,mt8183-svs-gpu"; > + power-domains = <&scpsys MT8183_POWER_DOMAIN_MFG_2D>; > + operating-points-v2 = <&gpu_opp_table>; > + }; > + }; > + > + &svs_cpu_little { > + vcpu-little-supply = <&mt6358_vproc12_reg>; It's already defined to have OPP and supply in the cpu nodes. Parse them to get this information rather than duplicating it here. The same should apply to the CCI and GPU. Rob _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2019-09-30 13:35 UTC|newest] Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top 2019-09-06 10:05 [PATCH v5 0/3] PM / AVS: SVS: Introduce SVS engine Roger Lu 2019-09-06 10:05 ` Roger Lu 2019-09-06 10:05 ` Roger Lu 2019-09-06 10:05 ` [PATCH v5 1/3] dt-bindings: soc: add mtk svs dt-bindings Roger Lu 2019-09-06 10:05 ` Roger Lu 2019-09-06 10:05 ` Roger Lu 2019-09-30 13:35 ` Rob Herring [this message] 2019-09-30 13:35 ` Rob Herring 2019-12-27 6:50 ` Roger Lu 2019-12-27 6:50 ` Roger Lu 2019-12-27 6:50 ` Roger Lu 2020-01-13 7:02 ` Nicolas Boichat 2020-01-13 7:02 ` Nicolas Boichat 2020-01-13 7:02 ` Nicolas Boichat 2019-09-06 10:05 ` [PATCH v5 2/3] arm64: dts: mt8183: add svs device information Roger Lu 2019-09-06 10:05 ` Roger Lu 2019-09-06 10:05 ` Roger Lu 2019-09-06 10:05 ` [PATCH v5 3/3] PM / AVS: SVS: Introduce SVS engine Roger Lu 2019-09-06 10:05 ` Roger Lu 2019-09-06 10:05 ` Roger Lu 2019-09-26 22:39 ` Kevin Hilman 2019-09-26 22:39 ` Kevin Hilman 2019-09-26 22:39 ` Kevin Hilman 2020-01-03 5:44 ` Roger Lu 2020-01-03 5:44 ` Roger Lu 2020-01-03 5:44 ` Roger Lu 2019-10-21 7:51 ` Pi-Hsun Shih 2019-10-21 7:51 ` Pi-Hsun Shih 2019-10-21 7:51 ` Pi-Hsun Shih 2019-11-01 6:10 ` Roger Lu 2019-11-01 6:10 ` Roger Lu 2019-11-01 6:10 ` Roger Lu 2019-11-14 7:41 ` Pi-Hsun Shih 2019-11-14 7:41 ` Pi-Hsun Shih 2019-11-14 7:41 ` Pi-Hsun Shih 2019-12-27 7:14 ` Roger Lu 2019-12-27 7:14 ` Roger Lu 2019-12-27 7:14 ` Roger Lu 2019-09-06 10:15 ` [PATCH v5 0/3] " Roger Lu 2019-09-06 10:15 ` Roger Lu 2019-09-06 10:15 ` Roger Lu
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20190930133548.GA24574@bogus \ --to=robh@kernel.org \ --cc=Angus.Lin@mediatek.com \ --cc=HenryC.Chen@mediatek.com \ --cc=devicetree@vger.kernel.org \ --cc=drinkcat@google.com \ --cc=fan.chen@mediatek.com \ --cc=khilman@kernel.org \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-mediatek@lists.infradead.org \ --cc=linux-pm@vger.kernel.org \ --cc=mark.rutland@arm.com \ --cc=matthias.bgg@gmail.com \ --cc=nm@ti.com \ --cc=roger.lu@mediatek.com \ --cc=sboyd@kernel.org \ --cc=yt.lee@mediatek.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.