On Sun, Feb 13, 2022 at 07:58:28PM +0000, Cristian Marussi wrote: > SCMI protocols in the platform can optionally signal to the OSPM agent > the expected execution latency for a specific resource/operation pair. > > Introduce an SCMI system wide optional property to describe a global time > threshold which can be configured on a per-platform base to determine the > opportunity, or not, for an SCMI command advertised to have a higher > latency than the threshold, to be considered for atomic operations: > high-latency SCMI synchronous commands should be preferably issued in the > usual non-atomic mode. > > Cc: Rob Herring <robh+dt@xxxxxxxxxx> > Cc: devicetree@xxxxxxxxxxxxxxx > Signed-off-by: Cristian Marussi <cristian.marussi@xxxxxxx> > --- > v3 --> v4 > - renamed property to atomic-threshold-us > v1 --> v2 > - rephrased the property description > --- > .../devicetree/bindings/firmware/arm,scmi.yaml | 11 +++++++++++ > 1 file changed, 11 insertions(+) > > diff --git a/Documentation/devicetree/bindings/firmware/arm,scmi.yaml b/Documentation/devicetree/bindings/firmware/arm,scmi.yaml > index eae15df36eef..3ffa669b91af 100644 > --- a/Documentation/devicetree/bindings/firmware/arm,scmi.yaml > +++ b/Documentation/devicetree/bindings/firmware/arm,scmi.yaml > @@ -81,6 +81,15 @@ properties: > '#size-cells': > const: 0 > Hi Rob, gentle ping ... any feedback on this SCMI DT addition ? (beside the brain-dead error of mine down below in the example still to be fixed...my bad) > + atomic-threshold-us: > + $ref: /schemas/types.yaml#/definitions/uint32 > + description: > + An optional time value, expressed in microseconds, representing, on this > + platform, the threshold above which any SCMI command, advertised to have > + an higher-than-threshold execution latency, should not be considered for > + atomic mode of operation, even if requested. > + If left unconfigured defaults to zero. > + > arm,smc-id: > $ref: /schemas/types.yaml#/definitions/uint32 > description: > @@ -264,6 +273,8 @@ examples: > #address-cells = <1>; > #size-cells = <0>; > > + atomic_threshold = <10000>; > + ...this example clearly still needs to be renamed to 'atomic-threshold-us' Thanks, Cristian