[PATCH 1/2] ASoC: dt-bindings: Add cmx655 codec

From: Nikola Jelic
Date: Mon Feb 03 2025 - 12:01:56 EST


Signed-off-by: Nikola Jelic <nikola.jelic83@xxxxxxxxx>
---
.../bindings/sound/cml,cmx655d.yaml | 79 +++++++++++++++++++
.../devicetree/bindings/vendor-prefixes.yaml | 2 +
2 files changed, 81 insertions(+)
create mode 100644 Documentation/devicetree/bindings/sound/cml,cmx655d.yaml

diff --git a/Documentation/devicetree/bindings/sound/cml,cmx655d.yaml b/Documentation/devicetree/bindings/sound/cml,cmx655d.yaml
new file mode 100644
index 000000000000..ea2cdce80ea3
--- /dev/null
+++ b/Documentation/devicetree/bindings/sound/cml,cmx655d.yaml
@@ -0,0 +1,79 @@
+# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/sound/cml,cmx655d.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: CML Micro CMX655D codec
+
+maintainers:
+ - Richard Walton <rwalton@xxxxxxxxxxxx>
+ - Nikola Jelic <nikola.jelic83@xxxxxxxxx>
+
+description: |
+ The CMX655D is an ultra-low power voice codec.
+
+allOf:
+ - $ref: dai-common.yaml#
+
+properties:
+ compatible:
+ enum:
+ - cml,cmx655d
+
+ reg:
+ maxItems: 1
+
+ "#sound-dai-cells":
+ const: 0
+
+ reset-gpios:
+ description: GPIO used for codec reset, negative logic
+ maxItems: 1
+
+ interrupts:
+ maxItems: 1
+
+ interrupt-names:
+ maxItems: 1
+
+ pinctrl-names:
+ maxItems: 1
+
+ pinctr-0:
+ maxItems: 1
+
+ cmx655,classd-oc-reset-attempts:
+ description: Maximum number of times to reset CMX655 class-D
+ following a overcurrent event.
+ Default = 5, >10000 = disable limit.
+ $ref: /schemas/types.yaml#/definitions/uint32
+ default: 5
+
+required:
+ - compatible
+ - reg
+
+unevaluatedProperties: false
+
+examples:
+ - |
+ i2c {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ status = "okay";
+ codec: cmx655 {
+ reg = <0x54>;
+ #sound-dai-cells = <0>;
+ compatible = "cml,cmx655d";
+ reset-gpios = <&gpio 24 1>;
+ interrupt-parent = <&gpio>;
+ interrupts = <25 0x2>;
+ interrupt-names = "irq";
+ pinctrl-names = "default";
+ pinctrl-0 = <&ev6550DHAT_pins>;
+ cmx655,classd-oc-reset-attempts = <5>;
+ };
+
+ };
+...
diff --git a/Documentation/devicetree/bindings/vendor-prefixes.yaml b/Documentation/devicetree/bindings/vendor-prefixes.yaml
index 5079ca6ce1d1..c471a4b905cf 100644
--- a/Documentation/devicetree/bindings/vendor-prefixes.yaml
+++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml
@@ -308,6 +308,8 @@ patternProperties:
description: Carl Cloos Schweisstechnik GmbH.
"^cloudengines,.*":
description: Cloud Engines, Inc.
+ "^cml,.*":
+ description: CML Micro, Ltd.
"^cnm,.*":
description: Chips&Media, Inc.
"^cnxt,.*":
--
2.47.2