On 18/04/2023 10:54, Krzysztof Kozlowski wrote:
The port sample interval was always 16-bit, split into low and high bytes. This split was unnecessary, although harmless for older devices because all of them used only lower byte (so values < 0xff). With support for Soundwire controller on Qualcomm SM8550 and its devices, both bytes will be used, thus add a new 'qcom,ports-sinterval' property to allow 16-bit sample intervals.
Reviewed-by: Rob Herring robh@kernel.org Signed-off-by: Krzysztof Kozlowski krzysztof.kozlowski@linaro.org
Reviewed-by: Srinivas Kandagatla srinivas.kandagatla@linaro.org
--srini
Changes since v2:
- Use uint16 for qcom,ports-sinterval. DTS will be fixed in separate patchset.
- Add tags.
.../bindings/soundwire/qcom,soundwire.yaml | 20 +++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-)
diff --git a/Documentation/devicetree/bindings/soundwire/qcom,soundwire.yaml b/Documentation/devicetree/bindings/soundwire/qcom,soundwire.yaml index 98c7fc7e1189..fb44b89a754e 100644 --- a/Documentation/devicetree/bindings/soundwire/qcom,soundwire.yaml +++ b/Documentation/devicetree/bindings/soundwire/qcom,soundwire.yaml @@ -86,7 +86,7 @@ properties: qcom,ports-sinterval-low: $ref: /schemas/types.yaml#/definitions/uint8-array description:
Sample interval low of each data port.
Sample interval (only lowest byte) of each data port. Out ports followed by In ports. Used for Sample Interval calculation. Value of 0xff indicates that this option is not implemented or applicable for the respective data port.
@@ -94,6 +94,17 @@ properties: minItems: 3 maxItems: 16
- qcom,ports-sinterval:
- $ref: /schemas/types.yaml#/definitions/uint16-array
- description:
Sample interval of each data port.
Out ports followed by In ports. Used for Sample Interval calculation.
Value of 0xffff indicates that this option is not implemented
or applicable for the respective data port.
More info in MIPI Alliance SoundWire 1.0 Specifications.
- minItems: 3
- maxItems: 16
- qcom,ports-offset1: $ref: /schemas/types.yaml#/definitions/uint8-array description:
@@ -220,10 +231,15 @@ required: - '#size-cells' - qcom,dout-ports - qcom,din-ports
- qcom,ports-sinterval-low
- qcom,ports-offset1
- qcom,ports-offset2
+oneOf:
- required:
- qcom,ports-sinterval-low
- required:
- qcom,ports-sinterval
additionalProperties: false
examples: