Linux 6.9-rc1
[linux-2.6-microblaze.git] / Documentation / devicetree / bindings / sound / marvell,mmp-sspa.yaml
1 # SPDX-License-Identifier: (GPL-2.0+ OR BSD-2-Clause)
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/sound/marvell,mmp-sspa.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: Marvel SSPA Digital Audio Interface
8
9 maintainers:
10   - Lubomir Rintel <lkundrak@v3.sk>
11
12 allOf:
13   - $ref: dai-common.yaml#
14
15 properties:
16   $nodename:
17     pattern: "^audio-controller(@.*)?$"
18
19   compatible:
20     const: marvell,mmp-sspa
21
22   reg:
23     items:
24       - description: RX block
25       - description: TX block
26
27   interrupts:
28     maxItems: 1
29
30   clocks:
31     items:
32       - description: Clock for the Audio block
33       - description: I2S bit clock
34
35   clock-names:
36     items:
37       - const: audio
38       - const: bitclk
39
40   power-domains:
41     maxItems: 1
42
43   '#sound-dai-cells':
44     const: 0
45
46   dmas:
47     items:
48       - description: TX DMA Channel
49       - description: RX DMA Channel
50
51   dma-names:
52     items:
53       - const: tx
54       - const: rx
55
56   port:
57     $ref: audio-graph-port.yaml#
58     unevaluatedProperties: false
59
60     properties:
61       endpoint:
62         type: object
63         additionalProperties: true
64
65         properties:
66           dai-format:
67             const: i2s
68
69 required:
70   - "#sound-dai-cells"
71   - compatible
72   - reg
73   - interrupts
74   - clocks
75   - clock-names
76   - dmas
77   - dma-names
78   - port
79
80 unevaluatedProperties: false
81
82 examples:
83   - |
84     #include <dt-bindings/clock/marvell,mmp2.h>
85
86     audio-controller@d42a0c00 {
87       compatible = "marvell,mmp-sspa";
88       reg = <0xd42a0c00 0x30>,
89             <0xd42a0c80 0x30>;
90       interrupts = <2>;
91       clock-names = "audio", "bitclk";
92       clocks = <&soc_clocks 127>,
93                <&audio_clk 1>;
94       #sound-dai-cells = <0>;
95       dmas = <&adma0 0>, <&adma0 1>;
96       dma-names = "tx", "rx";
97       port {
98         endpoint {
99           remote-endpoint = <&rt5631_0>;
100           dai-format = "i2s";
101         };
102       };
103     };
104
105 ...