Convert the STM32 DFSDM audio bindings to DT schema format
using json-schema.
Signed-off-by: Olivier Moysan <[email protected]>
---
.../bindings/sound/st,stm32-adfsdm.txt | 63 -------------------
.../bindings/sound/st,stm32-adfsdm.yaml | 42 +++++++++++++
2 files changed, 42 insertions(+), 63 deletions(-)
delete mode 100644 Documentation/devicetree/bindings/sound/st,stm32-adfsdm.txt
create mode 100644 Documentation/devicetree/bindings/sound/st,stm32-adfsdm.yaml
diff --git a/Documentation/devicetree/bindings/sound/st,stm32-adfsdm.txt b/Documentation/devicetree/bindings/sound/st,stm32-adfsdm.txt
deleted file mode 100644
index 864f5b00b031..000000000000
--- a/Documentation/devicetree/bindings/sound/st,stm32-adfsdm.txt
+++ /dev/null
@@ -1,63 +0,0 @@
-STMicroelectronics Audio Digital Filter Sigma Delta modulators(DFSDM)
-
-The DFSDM allows PDM microphones capture through SPI interface. The Audio
-interface is seems as a sub block of the DFSDM device.
-For details on DFSDM bindings refer to ../iio/adc/st,stm32-dfsdm-adc.txt
-
-Required properties:
- - compatible: "st,stm32h7-dfsdm-dai".
-
- - #sound-dai-cells : Must be equal to 0
-
- - io-channels : phandle to iio dfsdm instance node.
-
-Example of a sound card using audio DFSDM node.
-
- sound_card {
- compatible = "audio-graph-card";
-
- dais = <&cpu_port>;
- };
-
- dfsdm: dfsdm@40017000 {
- compatible = "st,stm32h7-dfsdm";
- reg = <0x40017000 0x400>;
- clocks = <&rcc DFSDM1_CK>;
- clock-names = "dfsdm";
- #interrupt-cells = <1>;
- #address-cells = <1>;
- #size-cells = <0>;
-
- dfsdm_adc0: filter@0 {
- compatible = "st,stm32-dfsdm-dmic";
- reg = <0>;
- interrupts = <110>;
- dmas = <&dmamux1 101 0x400 0x00>;
- dma-names = "rx";
- st,adc-channels = <1>;
- st,adc-channel-names = "dmic0";
- st,adc-channel-types = "SPI_R";
- st,adc-channel-clk-src = "CLKOUT";
- st,filter-order = <5>;
-
- dfsdm_dai0: dfsdm-dai {
- compatible = "st,stm32h7-dfsdm-dai";
- #sound-dai-cells = <0>;
- io-channels = <&dfsdm_adc0 0>;
- cpu_port: port {
- dfsdm_endpoint: endpoint {
- remote-endpoint = <&dmic0_endpoint>;
- };
- };
- };
- };
-
- dmic0: dmic@0 {
- compatible = "dmic-codec";
- #sound-dai-cells = <0>;
- port {
- dmic0_endpoint: endpoint {
- remote-endpoint = <&dfsdm_endpoint>;
- };
- };
- };
diff --git a/Documentation/devicetree/bindings/sound/st,stm32-adfsdm.yaml b/Documentation/devicetree/bindings/sound/st,stm32-adfsdm.yaml
new file mode 100644
index 000000000000..d953ec524ba2
--- /dev/null
+++ b/Documentation/devicetree/bindings/sound/st,stm32-adfsdm.yaml
@@ -0,0 +1,42 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/sound/st,stm32-adfsdm.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: STMicroelectronics Audio Digital Filter Sigma Delta modulators(DFSDM)
+
+maintainers:
+ - Olivier Moysan <[email protected]>
+
+description:
+ The DFSDM allows PDM microphones capture through the SPI interface.
+ The Audio interface is seen as a sub block of the DFSDM device.
+ For details on DFSDM bindings refer to ../iio/adc/st,stm32-dfsdm-adc.yaml
+
+properties:
+ compatible:
+ enum:
+ - st,stm32h7-dfsdm-dai
+
+ "#sound-dai-cells":
+ const: 0
+
+ io-channels:
+ description: phandle to iio dfsdm instance node
+ maxItems: 1
+
+required:
+ - compatible
+ - "#sound-dai-cells"
+ - io-channels
+
+examples:
+ - |
+ asoc_pdm0: dfsdm-dai {
+ compatible = "st,stm32h7-dfsdm-dai";
+ #sound-dai-cells = <0>;
+ io-channels = <&dfsdm0 0>;
+ };
+
+...
--
2.17.1
On Wed, Oct 14, 2020 at 02:35:31PM +0200, Olivier Moysan wrote:
> Convert the STM32 DFSDM audio bindings to DT schema format
> using json-schema.
>
> Signed-off-by: Olivier Moysan <[email protected]>
> ---
> .../bindings/sound/st,stm32-adfsdm.txt | 63 -------------------
> .../bindings/sound/st,stm32-adfsdm.yaml | 42 +++++++++++++
> 2 files changed, 42 insertions(+), 63 deletions(-)
> delete mode 100644 Documentation/devicetree/bindings/sound/st,stm32-adfsdm.txt
> create mode 100644 Documentation/devicetree/bindings/sound/st,stm32-adfsdm.yaml
This is almost already documented in
Documentation/devicetree/bindings/iio/adc/st,stm32-dfsdm-adc.yaml. You
should either make that complete or reference this.
Rob