2020-04-24 15:56:06

by Georgi Djakov

[permalink] [raw]
Subject: [PATCH v7 1/7] dt-bindings: opp: Introduce opp-peak-kBps and opp-avg-kBps bindings

From: Saravana Kannan <[email protected]>

Interconnects often quantify their performance points in terms of
bandwidth. So, add opp-peak-kBps (required) and opp-avg-kBps (optional) to
allow specifying Bandwidth OPP tables in DT.

opp-peak-kBps is a required property that replaces opp-hz for Bandwidth OPP
tables.

opp-avg-kBps is an optional property that can be used in Bandwidth OPP
tables.

Signed-off-by: Saravana Kannan <[email protected]>
Signed-off-by: Georgi Djakov <[email protected]>
---
v7:
* I have dropped Rob's Reviewed-by, because of the minor change below:
* In order to store the bandwidth values for multiple paths, the
opp-peak-kBps and opp-avg-kBps are now defined as arrays of integers,
instead of just integers.
* Improved wording (Viresh)

v6: https://lore.kernel.org/r/[email protected]

Documentation/devicetree/bindings/opp/opp.txt | 20 ++++++++++++++++---
.../devicetree/bindings/property-units.txt | 4 ++++
2 files changed, 21 insertions(+), 3 deletions(-)

diff --git a/Documentation/devicetree/bindings/opp/opp.txt b/Documentation/devicetree/bindings/opp/opp.txt
index 68592271461f..a8a6a3bfcfcb 100644
--- a/Documentation/devicetree/bindings/opp/opp.txt
+++ b/Documentation/devicetree/bindings/opp/opp.txt
@@ -83,9 +83,17 @@ properties.

Required properties:
- opp-hz: Frequency in Hz, expressed as a 64-bit big-endian integer. This is a
- required property for all device nodes but devices like power domains. The
- power domain nodes must have another (implementation dependent) property which
- uniquely identifies the OPP nodes.
+ required property for all device nodes except for devices like power domains
+ or bandwidth opp tables. The devices which don't have this property must have
+ another (implementation dependent) property which uniquely identifies the OPP
+ nodes.
+
+
+- opp-peak-kBps: Peak bandwidth in kilobytes per second, expressed as an array
+ of 32-bit big-endian integers. Each element of the array represents the
+ peak bandwidth value of each interconnect path. The number of elements should
+ match the number of interconnect paths. This is a required property for
+ bandwidth OPP tables.

Optional properties:
- opp-microvolt: voltage in micro Volts.
@@ -132,6 +140,12 @@ Optional properties:
- opp-level: A value representing the performance level of the device,
expressed as a 32-bit integer.

+- opp-avg-kBps: Average bandwidth in kilobytes per second, expressed as an array
+ of 32-bit big-endian integers. Each element of the array represents the
+ average bandwidth value of each interconnect path. The number of elements
+ should match the number of interconnect paths. This property is only
+ meaningful in OPP tables where opp-peak-kBps is present.
+
- clock-latency-ns: Specifies the maximum possible transition latency (in
nanoseconds) for switching to this OPP from any other OPP.

diff --git a/Documentation/devicetree/bindings/property-units.txt b/Documentation/devicetree/bindings/property-units.txt
index e9b8360b3288..c80a110c1e26 100644
--- a/Documentation/devicetree/bindings/property-units.txt
+++ b/Documentation/devicetree/bindings/property-units.txt
@@ -41,3 +41,7 @@ Temperature
Pressure
----------------------------------------
-kpascal : kilopascal
+
+Throughput
+----------------------------------------
+-kBps : kilobytes per second


2020-04-30 05:14:18

by Viresh Kumar

[permalink] [raw]
Subject: Re: [PATCH v7 1/7] dt-bindings: opp: Introduce opp-peak-kBps and opp-avg-kBps bindings

On 24-04-20, 18:53, Georgi Djakov wrote:
> From: Saravana Kannan <[email protected]>
>
> Interconnects often quantify their performance points in terms of
> bandwidth. So, add opp-peak-kBps (required) and opp-avg-kBps (optional) to
> allow specifying Bandwidth OPP tables in DT.
>
> opp-peak-kBps is a required property that replaces opp-hz for Bandwidth OPP
> tables.
>
> opp-avg-kBps is an optional property that can be used in Bandwidth OPP
> tables.
>
> Signed-off-by: Saravana Kannan <[email protected]>
> Signed-off-by: Georgi Djakov <[email protected]>
> ---
> v7:
> * I have dropped Rob's Reviewed-by, because of the minor change below:
> * In order to store the bandwidth values for multiple paths, the
> opp-peak-kBps and opp-avg-kBps are now defined as arrays of integers,
> instead of just integers.
> * Improved wording (Viresh)
>
> v6: https://lore.kernel.org/r/[email protected]
>
> Documentation/devicetree/bindings/opp/opp.txt | 20 ++++++++++++++++---
> .../devicetree/bindings/property-units.txt | 4 ++++
> 2 files changed, 21 insertions(+), 3 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/opp/opp.txt b/Documentation/devicetree/bindings/opp/opp.txt
> index 68592271461f..a8a6a3bfcfcb 100644
> --- a/Documentation/devicetree/bindings/opp/opp.txt
> +++ b/Documentation/devicetree/bindings/opp/opp.txt
> @@ -83,9 +83,17 @@ properties.
>
> Required properties:
> - opp-hz: Frequency in Hz, expressed as a 64-bit big-endian integer. This is a
> - required property for all device nodes but devices like power domains. The
> - power domain nodes must have another (implementation dependent) property which
> - uniquely identifies the OPP nodes.
> + required property for all device nodes except for devices like power domains
> + or bandwidth opp tables. The devices which don't have this property must have

bandwidth opp table ?

> + another (implementation dependent) property which uniquely identifies the OPP
> + nodes.
> +
> +
> +- opp-peak-kBps: Peak bandwidth in kilobytes per second, expressed as an array
> + of 32-bit big-endian integers. Each element of the array represents the
> + peak bandwidth value of each interconnect path. The number of elements should
> + match the number of interconnect paths. This is a required property for
> + bandwidth OPP tables.
>
> Optional properties:
> - opp-microvolt: voltage in micro Volts.
> @@ -132,6 +140,12 @@ Optional properties:
> - opp-level: A value representing the performance level of the device,
> expressed as a 32-bit integer.
>
> +- opp-avg-kBps: Average bandwidth in kilobytes per second, expressed as an array
> + of 32-bit big-endian integers. Each element of the array represents the
> + average bandwidth value of each interconnect path. The number of elements
> + should match the number of interconnect paths. This property is only
> + meaningful in OPP tables where opp-peak-kBps is present.
> +
> - clock-latency-ns: Specifies the maximum possible transition latency (in
> nanoseconds) for switching to this OPP from any other OPP.
>
> diff --git a/Documentation/devicetree/bindings/property-units.txt b/Documentation/devicetree/bindings/property-units.txt
> index e9b8360b3288..c80a110c1e26 100644
> --- a/Documentation/devicetree/bindings/property-units.txt
> +++ b/Documentation/devicetree/bindings/property-units.txt
> @@ -41,3 +41,7 @@ Temperature
> Pressure
> ----------------------------------------
> -kpascal : kilopascal
> +
> +Throughput
> +----------------------------------------
> +-kBps : kilobytes per second

--
viresh

2020-05-04 20:33:51

by Sibi Sankar

[permalink] [raw]
Subject: Re: [PATCH v7 1/7] dt-bindings: opp: Introduce opp-peak-kBps and opp-avg-kBps bindings

On 2020-04-24 21:23, Georgi Djakov wrote:
> From: Saravana Kannan <[email protected]>
>
> Interconnects often quantify their performance points in terms of
> bandwidth. So, add opp-peak-kBps (required) and opp-avg-kBps (optional)
> to
> allow specifying Bandwidth OPP tables in DT.
>
> opp-peak-kBps is a required property that replaces opp-hz for Bandwidth
> OPP
> tables.
>
> opp-avg-kBps is an optional property that can be used in Bandwidth OPP
> tables.
>

Reviewed-by: Sibi Sankar <[email protected]>

> Signed-off-by: Saravana Kannan <[email protected]>
> Signed-off-by: Georgi Djakov <[email protected]>
> ---
> v7:
> * I have dropped Rob's Reviewed-by, because of the minor change below:
> * In order to store the bandwidth values for multiple paths, the
> opp-peak-kBps and opp-avg-kBps are now defined as arrays of integers,
> instead of just integers.
> * Improved wording (Viresh)
...


--
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
a Linux Foundation Collaborative Project.

2020-05-11 21:55:30

by Rob Herring (Arm)

[permalink] [raw]
Subject: Re: [PATCH v7 1/7] dt-bindings: opp: Introduce opp-peak-kBps and opp-avg-kBps bindings

On Fri, 24 Apr 2020 18:53:58 +0300, Georgi Djakov wrote:
> From: Saravana Kannan <[email protected]>
>
> Interconnects often quantify their performance points in terms of
> bandwidth. So, add opp-peak-kBps (required) and opp-avg-kBps (optional) to
> allow specifying Bandwidth OPP tables in DT.
>
> opp-peak-kBps is a required property that replaces opp-hz for Bandwidth OPP
> tables.
>
> opp-avg-kBps is an optional property that can be used in Bandwidth OPP
> tables.
>
> Signed-off-by: Saravana Kannan <[email protected]>
> Signed-off-by: Georgi Djakov <[email protected]>
> ---
> v7:
> * I have dropped Rob's Reviewed-by, because of the minor change below:
> * In order to store the bandwidth values for multiple paths, the
> opp-peak-kBps and opp-avg-kBps are now defined as arrays of integers,
> instead of just integers.
> * Improved wording (Viresh)
>
> v6: https://lore.kernel.org/r/[email protected]
>
> Documentation/devicetree/bindings/opp/opp.txt | 20 ++++++++++++++++---
> .../devicetree/bindings/property-units.txt | 4 ++++
> 2 files changed, 21 insertions(+), 3 deletions(-)
>

Reviewed-by: Rob Herring <[email protected]>