Linux 6.7-rc7
[linux-modified.git] / Documentation / devicetree / bindings / sound / mvebu-audio.txt
1 * mvebu (Kirkwood, Dove, Armada 370) audio controller
2
3 Required properties:
4
5 - compatible:
6   "marvell,kirkwood-audio" for Kirkwood platforms
7   "marvell,dove-audio" for Dove platforms
8   "marvell,armada370-audio" for Armada 370 platforms
9   "marvell,armada-380-audio" for Armada 38x platforms
10
11 - reg: physical base address of the controller and length of memory mapped
12   region (named "i2s_regs").
13   With "marvell,armada-380-audio" two other regions are required:
14   first of those is dedicated for Audio PLL Configuration registers
15   (named "pll_regs") and the second one ("soc_ctrl") - for register
16   where one of exceptive I/O types (I2S or S/PDIF) is set.
17
18 - interrupts:
19   with "marvell,kirkwood-audio", the audio interrupt
20   with "marvell,dove-audio", a list of two interrupts, the first for
21   the data flow, and the second for errors.
22
23 - clocks: one or two phandles.
24   The first one is mandatory and defines the internal clock.
25   The second one is optional and defines an external clock.
26
27 - clock-names: names associated to the clocks:
28         "internal" for the internal clock
29         "extclk" for the external clock
30
31 Optional properties:
32
33 - spdif-mode:
34   Enable S/PDIF mode on Armada 38x SoC. Using this property
35   disables standard I2S I/O. Valid only with "marvell,armada-380-audio"
36   compatible string.
37
38 Example:
39
40 i2s1: audio-controller@b4000 {
41         compatible = "marvell,dove-audio";
42         reg = <0xb4000 0x2210>;
43         interrupts = <21>, <22>;
44         clocks = <&gate_clk 13>;
45         clock-names = "internal";
46 };