[PATCH v5 4/8] dt-bindings: firmware: arm, scmi: Add atomic-threshold-us optional property

Cristian Marussi cristian.marussi at arm.com
Thu Feb 17 05:12:30 PST 2022


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 at kernel.org>
Cc: devicetree at vger.kernel.org
Signed-off-by: Cristian Marussi <cristian.marussi at arm.com>
---
v4 --> v5:
- fixed example and removed dtschema warnings/errors :
  arm,scmi.yaml: properties:atomic-threshold-us:
  	'$ref' should not be valid under {'const': '$ref'}
- added default: 0 clause
v3 --> v4
- renamed property to atomic-threshold-us
v1 --> v2
- rephrased the property description
---
 .../devicetree/bindings/firmware/arm,scmi.yaml         | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/Documentation/devicetree/bindings/firmware/arm,scmi.yaml b/Documentation/devicetree/bindings/firmware/arm,scmi.yaml
index eae15df36eef..590743883802 100644
--- a/Documentation/devicetree/bindings/firmware/arm,scmi.yaml
+++ b/Documentation/devicetree/bindings/firmware/arm,scmi.yaml
@@ -81,6 +81,14 @@ properties:
   '#size-cells':
     const: 0
 
+  atomic-threshold-us:
+    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.
+    default: 0
+
   arm,smc-id:
     $ref: /schemas/types.yaml#/definitions/uint32
     description:
@@ -264,6 +272,8 @@ examples:
             #address-cells = <1>;
             #size-cells = <0>;
 
+            atomic-threshold-us = <10000>;
+
             scmi_devpd: protocol at 11 {
                 reg = <0x11>;
                 #power-domain-cells = <1>;
-- 
2.17.1




More information about the linux-arm-kernel mailing list