Message ID | 20220217131234.50328-5-cristian.marussi@arm.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Add SCMI Virtio & Clock atomic support | expand |
On Thu, Feb 17, 2022 at 7:13 AM Cristian Marussi <cristian.marussi@arm.com> 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@kernel.org> > Cc: devicetree@vger.kernel.org > Signed-off-by: Cristian Marussi <cristian.marussi@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'} Seems an old version got picked up for linux-next: /builds/robherring/linux-dt/Documentation/devicetree/bindings/firmware/arm,scmi.yaml: properties:atomic-threshold-us: '$ref' should not be valid under {'const': '$ref'} hint: Standard unit suffix properties don't need a type $ref from schema $id: http://devicetree.org/meta-schemas/core.yaml# /builds/robherring/linux-dt/Documentation/devicetree/bindings/firmware/arm,scmi.yaml: ignoring, error in schema: properties: atomic-threshold-us > - 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(+) For this version: Reviewed-by: Rob Herring <robh@kernel.org>
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@11 { reg = <0x11>; #power-domain-cells = <1>;
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@kernel.org> Cc: devicetree@vger.kernel.org Signed-off-by: Cristian Marussi <cristian.marussi@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(+)