boards: arm: nrf5340_audio_dk_nrf5340: add bindings for audio codec

The board embeds an audio codec IC, Cirrus CS42L73. While there is no
in-tree driver for it, we need a binding to describe how it is wired in
the board, e.g. for IRQ/RESET lines.

Following Linux binding for the same IC, create one in
dts/bindings/sound. Note that Linux binding is less complete/outdated.

Ref. https://statics.cirrus.com/pubs/proDatasheet/CS47L63_DS1249F2.pdf

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
diff --git a/boards/arm/nrf5340_audio_dk_nrf5340/nrf5340_audio_dk_nrf5340_cpuapp_common.dtsi b/boards/arm/nrf5340_audio_dk_nrf5340/nrf5340_audio_dk_nrf5340_cpuapp_common.dtsi
index d45db34..b56846f 100644
--- a/boards/arm/nrf5340_audio_dk_nrf5340/nrf5340_audio_dk_nrf5340_cpuapp_common.dtsi
+++ b/boards/arm/nrf5340_audio_dk_nrf5340/nrf5340_audio_dk_nrf5340_cpuapp_common.dtsi
@@ -184,8 +184,14 @@
 
 		spi-max-frequency = <8000000>;
 	};
+
 	cs47l63: cs47l63@1 {
+		compatible = "cirrus,cs47l63";
 		reg = <1>;
+		spi-max-frequency = <8000000>;
+		irq-gpios = <&gpio0 19 GPIO_ACTIVE_LOW>;
+		reset-gpios = <&gpio0 18 GPIO_ACTIVE_LOW>;
+		gpio9-gpios = <&gpio0 20 GPIO_ACTIVE_LOW>;
 	};
 };
 
diff --git a/dts/bindings/sound/cirrus,cs47l63.yaml b/dts/bindings/sound/cirrus,cs47l63.yaml
new file mode 100644
index 0000000..24940a9
--- /dev/null
+++ b/dts/bindings/sound/cirrus,cs47l63.yaml
@@ -0,0 +1,82 @@
+# Copyright (c) 2023 Nordic Semiconductor ASA
+# SPDX-License-Identifier: Apache-2.0
+
+description: Cirrus Logic CS47L63 Low-Power Audio DSP
+
+compatible: "cirrus,cs47l63"
+
+include: spi-device.yaml
+
+properties:
+  reg:
+    required: true
+
+  irq-gpios:
+    type: phandle-array
+    description:
+      Interrupt request (IRQ) output.
+
+  reset-gpios:
+    type: phandle-array
+    description:
+      Digital reset input.
+
+  gpio1-gpios:
+    type: phandle-array
+    description:
+      GPIO1 input with bus-keeper
+
+  gpio2-gpios:
+    type: phandle-array
+    description:
+      GPIO2 input with bus-keeper
+
+  gpio3-gpios:
+    type: phandle-array
+    description:
+      GPIO3 input with bus-keeper
+
+  gpio4-gpios:
+    type: phandle-array
+    description:
+      GPIO4 input with bus-keeper
+
+  gpio5-gpios:
+    type: phandle-array
+    description:
+      GPIO5 input with bus-keeper
+
+  gpio6-gpios:
+    type: phandle-array
+    description:
+      GPIO6 input with bus-keeper
+
+  gpio7-gpios:
+    type: phandle-array
+    description:
+      GPIO7 input with bus-keeper
+
+  gpio8-gpios:
+    type: phandle-array
+    description:
+      GPIO8 input with bus-keeper
+
+  gpio9-gpios:
+    type: phandle-array
+    description:
+      GPIO9 input with bus-keeper
+
+  gpio10-gpios:
+    type: phandle-array
+    description:
+      GPIO10 input with bus-keeper
+
+  gpio11-gpios:
+    type: phandle-array
+    description:
+      GPIO11 input with bus-keeper
+
+  gpio12-gpios:
+    type: phandle-array
+    description:
+      GPIO12 input with bus-keeper