On 24-04-20, 18:53, Georgi Djakov wrote: > From: Saravana Kannan <saravanak@xxxxxxxxxx> > > 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 <saravanak@xxxxxxxxxx> > Signed-off-by: Georgi Djakov <georgi.djakov@xxxxxxxxxx> > --- > 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/20191207002424.201796-2-saravanak@xxxxxxxxxx > > 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