Re: [PATCH v2 3/8] ASoC: dt-bindings: wcd937x-sdw: add bindings for wcd937x-sdw

From: Mohammad Rafi Shaik
Date: Mon Apr 22 2024 - 06:40:20 EST


On 4/17/2024 9:26 PM, Krzysztof Kozlowski wrote:
On 16/04/2024 08:35, Mohammad Rafi Shaik wrote:
From: Prasad Kumpatla <quic_pkumpatl@xxxxxxxxxxx>

Qualcomm WCD9370/WCD9375 Codec is a standalone Hi-Fi audio codec IC
connected over SoundWire. This device has two SoundWire devices RX and
TX respectively.
This binding is for those slave devices on WCD9370/WCD9375.

Co-developed-by: Mohammad Rafi Shaik <quic_mohs@xxxxxxxxxxx>
Signed-off-by: Mohammad Rafi Shaik <quic_mohs@xxxxxxxxxxx>
Signed-off-by: Prasad Kumpatla <quic_pkumpatl@xxxxxxxxxxx>
---
.../bindings/sound/qcom,wcd937x-sdw.yaml | 71 +++++++++++++++++++
1 file changed, 71 insertions(+)
create mode 100644 Documentation/devicetree/bindings/sound/qcom,wcd937x-sdw.yaml

diff --git a/Documentation/devicetree/bindings/sound/qcom,wcd937x-sdw.yaml b/Documentation/devicetree/bindings/sound/qcom,wcd937x-sdw.yaml
new file mode 100644
index 000000000000..2b7358e266ba
--- /dev/null
+++ b/Documentation/devicetree/bindings/sound/qcom,wcd937x-sdw.yaml
@@ -0,0 +1,71 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/sound/qcom,wcd937x-sdw.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Qualcomm SoundWire Slave devices on WCD9370
+
+maintainers:
+ - Srinivas Kandagatla <srinivas.kandagatla@xxxxxxxxxx>
+
+description: |

Do not need '|' unless you need to preserve formatting.

ACK

will remove '|' in next version patch set.


+ Qualcomm WCD9370 Codec is a standalone Hi-Fi audio codec IC.
+ It has RX and TX Soundwire slave devices. This bindings is for the
+ slave devices.
+
+properties:
+ compatible:
+ const: sdw20217010a00
+
+ reg:
+ maxItems: 1
+
+ qcom,tx-port-mapping:
+ description: |
+ Specifies static port mapping between slave and master tx ports.
+ In the order of slave port index.

Use inclusive terminology. Describe what is here - what is the index?
What is the value?

ACK


+ $ref: /schemas/types.yaml#/definitions/uint32-array
+ minItems: 4
+ maxItems: 4

Add constraints on values. You have maximum 15 TX ports, don't you?

+
+ qcom,rx-port-mapping:
+ description: |
+ Specifies static port mapping between slave and master rx ports.
+ In the order of slave port index.
+ $ref: /schemas/types.yaml#/definitions/uint32-array
+ minItems: 5
+ maxItems: 5
+
+required:
+ - compatible
+ - reg
+ - qcom,port-mapping

Test your binding. There is no need to engage reviewers for reviewing
simple mistakes which *tools* can point. Respect reviewers time and use
the tools first.

You need oneOf: with required for TX and RX... or just unify the
properties. Why do you need two?

ACK,

will fix the binding errors.

+
+additionalProperties: false
+
+examples:
+ - |
+ soundwire@3210000 {
Drop unit address.


actually took the reference from wcd938x.

https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/tree/Documentation/devicetree/bindings/sound/qcom,wcd938x-sdw.yaml#n48



+ #address-cells = <2>;
+ #size-cells = <0>;
+ reg = <0x03210000 0x2000>;

Drop, not relevant and not placed correctly (see DTS coding style).

+ wcd937x_rx: codec@0,4 {

Drop label, not used.

+ compatible = "sdw20217010a00";
+ reg = <0 4>;
+ qcom,rx-port-mapping = <1 2 3 4 5>;
+ };
+ };
+
+ soundwire@3230000 {

Drop this example, it's almost identical.

Best regards,
Krzysztof


Thanks & Regards,
Rafi