From: Sylwester Nawrocki <s.nawrocki@samsung.com> To: krzk@kernel.org Cc: kgene@kernel.org, robh+dt@kernel.org, mark.rutland@arm.com, cw00.choi@samsung.com, myungjoo.ham@samsung.com, linux-samsung-soc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, devicetree@vger.kernel.org, pankaj.dubey@samsung.com, b.zolnierkie@samsung.com, m.szyprowski@samsung.com, Sylwester Nawrocki <s.nawrocki@samsung.com> Subject: [PATCH RFC 3/8] dt-bindings: exynos: Add ASV tables binding documentation Date: Thu, 04 Apr 2019 19:17:30 +0200 [thread overview] Message-ID: <20190404171735.12815-4-s.nawrocki@samsung.com> (raw) In-Reply-To: <20190404171735.12815-1-s.nawrocki@samsung.com> This patch adds documentation of the Exynos ASV (Adaptive Voltage Supply) tables DT binding. Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com> --- .../devicetree/bindings/arm/samsung/asv.txt | 76 +++++++++++++++++++ 1 file changed, 76 insertions(+) create mode 100644 Documentation/devicetree/bindings/arm/samsung/asv.txt diff --git a/Documentation/devicetree/bindings/arm/samsung/asv.txt b/Documentation/devicetree/bindings/arm/samsung/asv.txt new file mode 100644 index 000000000000..0db907263a91 --- /dev/null +++ b/Documentation/devicetree/bindings/arm/samsung/asv.txt @@ -0,0 +1,76 @@ +Exynos Adaptive Supply Voltage (ASV) tables +------------------------------------------- + +The Adaptive Supply Voltage (ASV) on Exynos SoCs is a technique of adjusting +operating points, i.e. the power supply voltage for given clock frequency, +in order to better match actual capabilities of the hardware and optimize power +consumption. This applies to subsystem of the SoC like: CPU clusters, GPU, +the memory controller or camera ISP. During production process the SoC chip +is assigned to one of several bins (ASV groups) and the group information +is encoded in the SoC CHIPID block registers and/or OTP memory. This information +is then used by the OS to select more finely matching operating points for +devices. + +This binding describes data used to create actual operating points for the +subsystems. The data is in form of two-dimensional arrays of M x N cells, +where the first column contains frequency values and subsequent columns +associated with ASV groups contain corresponding voltage values. + + frequency group0 group1 ... group(N-1) + 0 1 2 ... N-1 +0 <f0 V00 V01 ... V0n>, +1 <f1 V10 V11 ... V1n>, +... < ... >, +M-1 <fm Vm0 Vm1 ... Vmn>, + +In simplest form the actual operating points set may be created by selecting +whole column for the voltage values, however also parts of multiple columns may +be combined by the OS to create series of voltage values corresponding to +frequencies in column 0. + +The ASV tables are defined as sub-nodes of parent node containing all tables. + +* Main node + +Required properties: + - compatible : should at least contain "samsung,exynos-asv-v1". + +* Table node + +Required properties: + - samsung,asv-table-size : specifies dimension of the table, the first cell is + total number of rows (M), the second cell is total number of columns (N), + - samsung,asv-table-id : ID of the table, lower 8-bits is an index (revision) + of the table, remaining bits (31...8) specify a subsystem the table applies + to: 0 - ARM/Eagle (big) CPU cluster, 1 - KFC (little) CPU cluster, + - samsung,asv-data : the ASV table data as described earlier in this document. + First cell is frequency value, then N-1 voltage values. Such sequence + is repeated M times. + +Optional properties: + - samsung,asv-common-data : a list of frequency, voltage pairs used to describe + operating points where voltage is same for all N-1 ASV groups. This allows + to avoid data duplication is the "samsung,asv-data" property. + +Example: + +&chipid { + asv { + compatible = "samsung,exynos-asv-v1"; + asv-table-0 { + samsung,asv-table-size = <8 6>; + samsung,asv-table-id = <0x0>; + samsung,asv-data = + /* ASV0 ASV1 ASV2 ASV3 ASV4 */ + <1700 1187500 1175000 1162500 1150000 1137500 >, + <1500 1125000 1112500 1100000 1087500 1075000 >, + <1300 1075000 1062500 1050000 1037500 1025000 >, + <1000 987500 975000 962500 950000 937500 >, + < 900 950000 937500 925000 925000 925000 >, + < 700 925000 912500 912500 912500 912500 >; + /* ASV0...15 */ + samsung,asv-common-data = <600 900000>, + <500 900000>; + }; + }; +}; -- 2.17.1
WARNING: multiple messages have this Message-ID (diff)
From: Sylwester Nawrocki <s.nawrocki@samsung.com> To: krzk@kernel.org Cc: mark.rutland@arm.com, devicetree@vger.kernel.org, linux-samsung-soc@vger.kernel.org, b.zolnierkie@samsung.com, pankaj.dubey@samsung.com, linux-kernel@vger.kernel.org, robh+dt@kernel.org, cw00.choi@samsung.com, kgene@kernel.org, myungjoo.ham@samsung.com, Sylwester Nawrocki <s.nawrocki@samsung.com>, linux-arm-kernel@lists.infradead.org, m.szyprowski@samsung.com Subject: [PATCH RFC 3/8] dt-bindings: exynos: Add ASV tables binding documentation Date: Thu, 04 Apr 2019 19:17:30 +0200 [thread overview] Message-ID: <20190404171735.12815-4-s.nawrocki@samsung.com> (raw) In-Reply-To: <20190404171735.12815-1-s.nawrocki@samsung.com> This patch adds documentation of the Exynos ASV (Adaptive Voltage Supply) tables DT binding. Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com> --- .../devicetree/bindings/arm/samsung/asv.txt | 76 +++++++++++++++++++ 1 file changed, 76 insertions(+) create mode 100644 Documentation/devicetree/bindings/arm/samsung/asv.txt diff --git a/Documentation/devicetree/bindings/arm/samsung/asv.txt b/Documentation/devicetree/bindings/arm/samsung/asv.txt new file mode 100644 index 000000000000..0db907263a91 --- /dev/null +++ b/Documentation/devicetree/bindings/arm/samsung/asv.txt @@ -0,0 +1,76 @@ +Exynos Adaptive Supply Voltage (ASV) tables +------------------------------------------- + +The Adaptive Supply Voltage (ASV) on Exynos SoCs is a technique of adjusting +operating points, i.e. the power supply voltage for given clock frequency, +in order to better match actual capabilities of the hardware and optimize power +consumption. This applies to subsystem of the SoC like: CPU clusters, GPU, +the memory controller or camera ISP. During production process the SoC chip +is assigned to one of several bins (ASV groups) and the group information +is encoded in the SoC CHIPID block registers and/or OTP memory. This information +is then used by the OS to select more finely matching operating points for +devices. + +This binding describes data used to create actual operating points for the +subsystems. The data is in form of two-dimensional arrays of M x N cells, +where the first column contains frequency values and subsequent columns +associated with ASV groups contain corresponding voltage values. + + frequency group0 group1 ... group(N-1) + 0 1 2 ... N-1 +0 <f0 V00 V01 ... V0n>, +1 <f1 V10 V11 ... V1n>, +... < ... >, +M-1 <fm Vm0 Vm1 ... Vmn>, + +In simplest form the actual operating points set may be created by selecting +whole column for the voltage values, however also parts of multiple columns may +be combined by the OS to create series of voltage values corresponding to +frequencies in column 0. + +The ASV tables are defined as sub-nodes of parent node containing all tables. + +* Main node + +Required properties: + - compatible : should at least contain "samsung,exynos-asv-v1". + +* Table node + +Required properties: + - samsung,asv-table-size : specifies dimension of the table, the first cell is + total number of rows (M), the second cell is total number of columns (N), + - samsung,asv-table-id : ID of the table, lower 8-bits is an index (revision) + of the table, remaining bits (31...8) specify a subsystem the table applies + to: 0 - ARM/Eagle (big) CPU cluster, 1 - KFC (little) CPU cluster, + - samsung,asv-data : the ASV table data as described earlier in this document. + First cell is frequency value, then N-1 voltage values. Such sequence + is repeated M times. + +Optional properties: + - samsung,asv-common-data : a list of frequency, voltage pairs used to describe + operating points where voltage is same for all N-1 ASV groups. This allows + to avoid data duplication is the "samsung,asv-data" property. + +Example: + +&chipid { + asv { + compatible = "samsung,exynos-asv-v1"; + asv-table-0 { + samsung,asv-table-size = <8 6>; + samsung,asv-table-id = <0x0>; + samsung,asv-data = + /* ASV0 ASV1 ASV2 ASV3 ASV4 */ + <1700 1187500 1175000 1162500 1150000 1137500 >, + <1500 1125000 1112500 1100000 1087500 1075000 >, + <1300 1075000 1062500 1050000 1037500 1025000 >, + <1000 987500 975000 962500 950000 937500 >, + < 900 950000 937500 925000 925000 925000 >, + < 700 925000 912500 912500 912500 912500 >; + /* ASV0...15 */ + samsung,asv-common-data = <600 900000>, + <500 900000>; + }; + }; +}; -- 2.17.1 _______________________________________________ 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-04-04 17:22 UTC|newest] Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top [not found] <CGME20190404172220epcas1p3a6a8d843780321c4914a63d589c56b33@epcas1p3.samsung.com> 2019-04-04 17:17 ` [PATCH RFC 0/8] Exynos Adaptive Supply Voltage support Sylwester Nawrocki 2019-04-04 17:17 ` Sylwester Nawrocki [not found] ` <CGME20190404172224epcas2p21b449c0ae8e36f7e800ae67c18db35a2@epcas2p2.samsung.com> 2019-04-04 17:17 ` [PATCH RFC 1/8] soc: samsung: Add exynos chipid driver support Sylwester Nawrocki 2019-04-04 17:17 ` Sylwester Nawrocki 2019-04-05 6:53 ` Krzysztof Kozlowski 2019-04-05 6:53 ` Krzysztof Kozlowski 2019-04-05 8:49 ` Sylwester Nawrocki 2019-04-05 8:49 ` Sylwester Nawrocki [not found] ` <CGME20190404172229epcas2p25a819e37035b26ccf53613e880bdcacf@epcas2p2.samsung.com> 2019-04-04 17:17 ` [PATCH RFC 2/8] soc: samsung: Exynos chipid driver update Sylwester Nawrocki 2019-04-04 17:17 ` Sylwester Nawrocki 2019-04-05 9:22 ` Krzysztof Kozlowski 2019-04-05 9:22 ` Krzysztof Kozlowski 2019-04-05 10:04 ` Sylwester Nawrocki 2019-04-05 10:04 ` Sylwester Nawrocki [not found] ` <CGME20190404172234epcas1p37667ec0996000aff9297f13639908dfc@epcas1p3.samsung.com> 2019-04-04 17:17 ` Sylwester Nawrocki [this message] 2019-04-04 17:17 ` [PATCH RFC 3/8] dt-bindings: exynos: Add ASV tables binding documentation Sylwester Nawrocki 2019-04-29 17:23 ` Rob Herring 2019-04-29 17:23 ` Rob Herring 2019-07-18 14:02 ` Sylwester Nawrocki 2019-07-18 14:02 ` Sylwester Nawrocki [not found] ` <CGME20190404172238epcas2p21ef28f46b728127dcd6e8ee72752a1b8@epcas2p2.samsung.com> 2019-04-04 17:17 ` [PATCH RFC 4/8] soc: samsung: Add Exynos Adaptive Supply Voltage driver Sylwester Nawrocki 2019-04-04 17:17 ` Sylwester Nawrocki 2019-04-05 10:24 ` Krzysztof Kozlowski 2019-04-05 10:24 ` Krzysztof Kozlowski 2019-04-09 17:40 ` Sylwester Nawrocki 2019-04-09 17:40 ` Sylwester Nawrocki 2019-04-23 10:50 ` Krzysztof Kozlowski 2019-04-23 10:50 ` Krzysztof Kozlowski 2019-04-24 8:11 ` Sylwester Nawrocki 2019-04-24 8:11 ` Sylwester Nawrocki 2019-04-24 8:20 ` Krzysztof Kozlowski 2019-04-24 8:20 ` Krzysztof Kozlowski [not found] ` <CGME20190404172243epcas1p39af2498a51772ee4ab2a31f26e469c5b@epcas1p3.samsung.com> 2019-04-04 17:17 ` [PATCH RFC 5/8] ARM: EXYNOS: enable exynos_chipid for ARCH_EXYNOS Sylwester Nawrocki 2019-04-04 17:17 ` Sylwester Nawrocki [not found] ` <CGME20190404172247epcas2p2d24f19f76db3cee177bd5b9df783eb3b@epcas2p2.samsung.com> 2019-04-04 17:17 ` [PATCH RFC 6/8] ARM64: " Sylwester Nawrocki 2019-04-04 17:17 ` Sylwester Nawrocki [not found] ` <CGME20190404172252epcas2p284b7e2e9e7102f6f95c982d547ed9d64@epcas2p2.samsung.com> 2019-04-04 17:17 ` [PATCH RFC 7/8] ARM: EXYNOS: Enable exynos-asv driver " Sylwester Nawrocki 2019-04-04 17:17 ` Sylwester Nawrocki [not found] ` <CGME20190404172257epcas1p20d789242a2353dc8e9ffd7f435dc5eee@epcas1p2.samsung.com> 2019-04-04 17:17 ` [PATCH RFC 8/8] ARM: dts: exynos: Add ASV tables for exynos5422/5800 Sylwester Nawrocki 2019-04-04 17:17 ` Sylwester Nawrocki 2019-04-11 7:39 ` Anand Moon 2019-04-11 7:39 ` Anand Moon 2019-04-11 8:50 ` Willy Wolff 2019-04-11 8:50 ` Willy Wolff
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=20190404171735.12815-4-s.nawrocki@samsung.com \ --to=s.nawrocki@samsung.com \ --cc=b.zolnierkie@samsung.com \ --cc=cw00.choi@samsung.com \ --cc=devicetree@vger.kernel.org \ --cc=kgene@kernel.org \ --cc=krzk@kernel.org \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-samsung-soc@vger.kernel.org \ --cc=m.szyprowski@samsung.com \ --cc=mark.rutland@arm.com \ --cc=myungjoo.ham@samsung.com \ --cc=pankaj.dubey@samsung.com \ --cc=robh+dt@kernel.org \ /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.