Re: [PATCH v3 7/8] dt-bindings: sound: qcom: add Tambora WCD9378 SDCA codec

From: Krzysztof Kozlowski

Date: Wed Sep 16 2026 - 03:01:26 EST


On Tue, Sep 15, 2026 at 05:56:49PM +0100, Srinivas Kandagatla wrote:
> diff --git a/Documentation/devicetree/bindings/sound/qcom,wcd9378-sdw.yaml b/Documentation/devicetree/bindings/sound/qcom,wcd9378-sdw.yaml
> new file mode 100644
> index 000000000000..9a6c309018ed
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/sound/qcom,wcd9378-sdw.yaml
> @@ -0,0 +1,91 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/sound/qcom,wcd9378-sdw.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Qualcomm WCD9378 (Tambora) SoundWire codec
> +
> +maintainers:
> + - Srinivas Kandagatla <srinivas.kandagatla@xxxxxxxxxxxxxxxx>
> +
> +description:
> + Qualcomm WCD9378 (Tambora) SoundWire codec in SDCA compute mode.
> +
> +properties:
> + compatible:
> + items:
> + - const: qcom,wcd9378c
> + - const: sdw20217011000

As pointed by Rob's bot, this won't work with current soundwire bus
schema. If it is the same silicon, then usually it does not warrant a
different compatible, even front compatible. For example same chips are
used on I2C and SPI buses and the difference is coming from the bus.

Last time I doubted that "compute" and "mobile" modes are a real thing,
but if you say they are actually different fuse values, then they would
be real. That could warrant different property, e.g.
"qcom,sdca-compliant" or "qcom,separate-tx-rx-interfaces".

However my points from Jorijn patchset remain - the top level wrapper
node is a fake construct to solve power sequencing issues and this
binding should allow fixing that one as well.

> +
> + reg:
> + maxItems: 1
> +
> + qcom,port-mapping:
> + description: |

You can drop |

> + Each entry maps a slave data port to a master data port.
> + Entries are in order starting from slave port 1; slave port 0
> + is reserved and not represented. Compute mode uses 8 entries
> + covering DP1..DP8.
> + $ref: /schemas/types.yaml#/definitions/uint32-array
> + minItems: 8
> + maxItems: 8

Best regards,
Krzysztof