[PATCH v1 1/2] dt-bindings: sound: add qcom,wsa885x-i2c

From: Prasad Kumpatla

Date: Wed Jun 10 2026 - 12:24:36 EST


Document the Qualcomm WSA885X I2C smart amplifier binding.

Describe the required supplies, powerdown and interrupt GPIOs, the
optional battery configuration, and the optional init-table property
used to program the device during codec initialization.

This matches the driver programming model and documents the DT data
needed to use the codec on platforms with Audio IF playback.

Signed-off-by: Prasad Kumpatla <prasad.kumpatla@xxxxxxxxxxxxxxxx>
---
.../bindings/sound/qcom,wsa885x-i2c.yaml | 89 +++++++++++++++++++
1 file changed, 89 insertions(+)
create mode 100644 Documentation/devicetree/bindings/sound/qcom,wsa885x-i2c.yaml

diff --git a/Documentation/devicetree/bindings/sound/qcom,wsa885x-i2c.yaml b/Documentation/devicetree/bindings/sound/qcom,wsa885x-i2c.yaml
new file mode 100644
index 000000000..1069f470d
--- /dev/null
+++ b/Documentation/devicetree/bindings/sound/qcom,wsa885x-i2c.yaml
@@ -0,0 +1,89 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/sound/qcom,wsa885x-i2c.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Qualcomm WSA885x I2C smart speaker amplifier
+
+maintainers:
+ - Srinivas Kandagatla <srinivas.kandagatla@xxxxxxxxxxxxxxxx>
+ - Prasad Kumpatla <prasad.kumpatla@xxxxxxxxxxxxxxxx>
+
+description: |
+ WSA885x is a Qualcomm Aqstic smart speaker amplifier with an I2C control
+ interface and a digital audio interface exposed through ASoC DAI callbacks.
+
+allOf:
+ - $ref: dai-common.yaml#
+
+properties:
+ compatible:
+ const: qcom,wsa885x-i2c
+
+ reg:
+ maxItems: 1
+
+ '#sound-dai-cells':
+ const: 0
+
+ powerdown-gpios:
+ description: GPIO controlling the SD_N powerdown pin.
+ maxItems: 1
+
+ interrupt-gpios:
+ description: GPIO used for the codec interrupt output.
+ maxItems: 1
+
+ vdd-1p8-supply: true
+
+ vdd-io-supply: true
+
+ qcom,battery-config:
+ $ref: /schemas/types.yaml#/definitions/uint32
+ description: Speaker battery configuration, 1 for 1S and 2 for 2S.
+ default: 1
+ enum: [1, 2]
+
+ qcom,wsa885x-init-table:
+ $ref: /schemas/types.yaml#/definitions/uint32-array
+ minItems: 2
+ maxItems: 256
+ description: |
+ Sequence of register/value pairs applied during codec hardware
+ initialization. Entries are encoded as alternating register address and
+ register value cells. The number of entries must be even (register/value
+ pairs); maxItems is 256 (128 pairs).
+
+required:
+ - compatible
+ - reg
+ - '#sound-dai-cells'
+ - powerdown-gpios
+ - interrupt-gpios
+ - vdd-1p8-supply
+ - vdd-io-supply
+
+additionalProperties: false
+
+examples:
+ - |
+ #include <dt-bindings/gpio/gpio.h>
+
+ i2c {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ speaker@c {
+ compatible = "qcom,wsa885x-i2c";
+ reg = <0x0c>;
+ #sound-dai-cells = <0>;
+ powerdown-gpios = <&tlmm 11 GPIO_ACTIVE_LOW>;
+ interrupt-gpios = <&tlmm 77 GPIO_ACTIVE_LOW>;
+ vdd-1p8-supply = <&vreg_l2g_1p8>;
+ vdd-io-supply = <&vreg_l1g_1p2>;
+ qcom,battery-config = <1>;
+ qcom,wsa885x-init-table = <0x8606 0x24 0x8626 0x24>;
+ };
+ };
+...
--
2.34.1