xref: /freebsd/sys/contrib/device-tree/Bindings/sound/img,i2s-in.txt (revision c66ec88fed842fbaad62c30d510644ceb7bd2d71)
1*c66ec88fSEmmanuel VadotImagination Technologies I2S Input Controller
2*c66ec88fSEmmanuel Vadot
3*c66ec88fSEmmanuel VadotRequired Properties:
4*c66ec88fSEmmanuel Vadot
5*c66ec88fSEmmanuel Vadot  - compatible : Compatible list, must contain "img,i2s-in"
6*c66ec88fSEmmanuel Vadot
7*c66ec88fSEmmanuel Vadot  - #sound-dai-cells : Must be equal to 0
8*c66ec88fSEmmanuel Vadot
9*c66ec88fSEmmanuel Vadot  - reg : Offset and length of the register set for the device
10*c66ec88fSEmmanuel Vadot
11*c66ec88fSEmmanuel Vadot  - clocks : Contains an entry for each entry in clock-names
12*c66ec88fSEmmanuel Vadot
13*c66ec88fSEmmanuel Vadot  - clock-names : Must include the following entry:
14*c66ec88fSEmmanuel Vadot	"sys"	The system clock
15*c66ec88fSEmmanuel Vadot
16*c66ec88fSEmmanuel Vadot  - dmas: Contains an entry for each entry in dma-names.
17*c66ec88fSEmmanuel Vadot
18*c66ec88fSEmmanuel Vadot  - dma-names: Must include the following entry:
19*c66ec88fSEmmanuel Vadot	"rx"	Single DMA channel used by all active I2S channels
20*c66ec88fSEmmanuel Vadot
21*c66ec88fSEmmanuel Vadot  - img,i2s-channels : Number of I2S channels instantiated in the I2S in block
22*c66ec88fSEmmanuel Vadot
23*c66ec88fSEmmanuel VadotOptional Properties:
24*c66ec88fSEmmanuel Vadot
25*c66ec88fSEmmanuel Vadot  - interrupts : Contains the I2S in interrupts. Depending on
26*c66ec88fSEmmanuel Vadot	the configuration, there may be no interrupts, one interrupt,
27*c66ec88fSEmmanuel Vadot	or an interrupt per I2S channel. For the case where there is
28*c66ec88fSEmmanuel Vadot	one interrupt per channel, the interrupts should be listed
29*c66ec88fSEmmanuel Vadot	in ascending channel order
30*c66ec88fSEmmanuel Vadot
31*c66ec88fSEmmanuel Vadot  - resets: Contains a phandle to the I2S in reset signal
32*c66ec88fSEmmanuel Vadot
33*c66ec88fSEmmanuel Vadot  - reset-names: Contains the reset signal name "rst"
34*c66ec88fSEmmanuel Vadot
35*c66ec88fSEmmanuel VadotExample:
36*c66ec88fSEmmanuel Vadot
37*c66ec88fSEmmanuel Vadoti2s_in: i2s-in@18100800 {
38*c66ec88fSEmmanuel Vadot	compatible = "img,i2s-in";
39*c66ec88fSEmmanuel Vadot	reg = <0x18100800 0x200>;
40*c66ec88fSEmmanuel Vadot	interrupts = <GIC_SHARED 7 IRQ_TYPE_LEVEL_HIGH>;
41*c66ec88fSEmmanuel Vadot	dmas = <&mdc 30 0xffffffff 0>;
42*c66ec88fSEmmanuel Vadot	dma-names = "rx";
43*c66ec88fSEmmanuel Vadot	clocks = <&cr_periph SYS_CLK_I2S_IN>;
44*c66ec88fSEmmanuel Vadot	clock-names = "sys";
45*c66ec88fSEmmanuel Vadot	img,i2s-channels = <6>;
46*c66ec88fSEmmanuel Vadot	#sound-dai-cells = <0>;
47*c66ec88fSEmmanuel Vadot};
48