xref: /linux/Documentation/devicetree/bindings/sound/st,stm32-spdifrx.yaml (revision 7f4f3b14e8079ecde096bd734af10e30d40c27b7)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/sound/st,stm32-spdifrx.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: STMicroelectronics STM32 S/PDIF receiver (SPDIFRX)
8
9maintainers:
10  - Olivier Moysan <olivier.moysan@foss.st.com>
11
12description: |
13  The SPDIFRX peripheral, is designed to receive an S/PDIF flow compliant with
14  IEC-60958 and IEC-61937.
15
16allOf:
17  - $ref: dai-common.yaml#
18
19properties:
20  compatible:
21    enum:
22      - st,stm32h7-spdifrx
23
24  "#sound-dai-cells":
25    const: 0
26
27  reg:
28    maxItems: 1
29
30  clocks:
31    maxItems: 1
32
33  clock-names:
34    items:
35      - const: kclk
36
37  interrupts:
38    maxItems: 1
39
40  dmas:
41    items:
42      - description: audio data capture DMA
43      - description: IEC status bits capture DMA
44
45  dma-names:
46    items:
47      - const: rx
48      - const: rx-ctrl
49
50  resets:
51    maxItems: 1
52
53  port:
54    $ref: audio-graph-port.yaml#
55    unevaluatedProperties: false
56
57  access-controllers:
58    minItems: 1
59    maxItems: 2
60
61required:
62  - compatible
63  - "#sound-dai-cells"
64  - reg
65  - clocks
66  - clock-names
67  - interrupts
68  - dmas
69  - dma-names
70
71unevaluatedProperties: false
72
73examples:
74  - |
75    #include <dt-bindings/interrupt-controller/arm-gic.h>
76    #include <dt-bindings/clock/stm32mp1-clks.h>
77    spdifrx: spdifrx@40004000 {
78        compatible = "st,stm32h7-spdifrx";
79        #sound-dai-cells = <0>;
80        reg = <0x40004000 0x400>;
81        clocks = <&rcc SPDIF_K>;
82        clock-names = "kclk";
83        interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>;
84        dmas = <&dmamux1 2 93 0x400 0x0>,
85               <&dmamux1 3 94 0x400 0x0>;
86        dma-names = "rx", "rx-ctrl";
87        pinctrl-0 = <&spdifrx_pins>;
88        pinctrl-names = "default";
89    };
90
91...
92