Merge tag 'mt76-for-kvalo-2020-06-07' of https://github.com/nbd168/wireless
[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 Bindings
8
9 maintainers:
10   - Lubomir Rintel <lkundrak@v3.sk>
11
12 properties:
13   $nodename:
14     pattern: "^audio-controller(@.*)?$"
15
16   compatible:
17     const: marvell,mmp-sspa
18
19   reg:
20     items:
21       - description: RX block
22       - description: TX block
23
24   interrupts:
25     maxItems: 1
26
27   clocks:
28     items:
29       - description: Clock for the Audio block
30       - description: I2S bit clock
31
32   clock-names:
33     items:
34       - const: audio
35       - const: bitclk
36
37   power-domains:
38     maxItems: 1
39
40   '#sound-dai-cells':
41     const: 0
42
43   dmas:
44     items:
45       - description: TX DMA Channel
46       - description: RX DMA Channel
47
48   dma-names:
49     items:
50       - const: tx
51       - const: rx
52
53   port:
54     type: object
55
56     properties:
57       endpoint:
58         type: object
59
60         properties:
61           remote-endpoint: true
62
63           frame-master:
64             type: boolean
65             description: SoC generates the frame clock
66
67           bitclock-master:
68             type: boolean
69             description: SoC generates the bit clock
70
71           dai-format:
72             $ref: /schemas/types.yaml#/definitions/string
73             description: The digital audio format
74             const: i2s
75
76         required:
77           - remote-endpoint
78
79     required:
80       - endpoint
81
82     additionalProperties: false
83
84 required:
85   - "#sound-dai-cells"
86   - compatible
87   - reg
88   - interrupts
89   - clocks
90   - clock-names
91   - dmas
92   - dma-names
93   - port
94
95 additionalProperties: false
96
97 examples:
98   - |
99     #include <dt-bindings/clock/marvell,mmp2.h>
100
101     audio-controller@d42a0c00 {
102       compatible = "marvell,mmp-sspa";
103       reg = <0xd42a0c00 0x30>,
104             <0xd42a0c80 0x30>;
105       interrupts = <2>;
106       clock-names = "audio", "bitclk";
107       clocks = <&soc_clocks 127>,
108                <&audio_clk 1>;
109       #sound-dai-cells = <0>;
110       dmas = <&adma0 0>, <&adma0 1>;
111       dma-names = "tx", "rx";
112       port {
113         endpoint {
114           remote-endpoint = <&rt5631_0>;
115           frame-master;
116           bitclock-master;
117           dai-format = "i2s";
118         };
119       };
120     };
121
122 ...