xref: /freebsd/sys/contrib/device-tree/Bindings/sound/xlnx,i2s.txt (revision c66ec88fed842fbaad62c30d510644ceb7bd2d71)
1*c66ec88fSEmmanuel VadotDevice-Tree bindings for Xilinx I2S PL block
2*c66ec88fSEmmanuel Vadot
3*c66ec88fSEmmanuel VadotThe IP supports I2S based playback/capture audio
4*c66ec88fSEmmanuel Vadot
5*c66ec88fSEmmanuel VadotRequired property:
6*c66ec88fSEmmanuel Vadot - compatible: "xlnx,i2s-transmitter-1.0" for playback and
7*c66ec88fSEmmanuel Vadot	       "xlnx,i2s-receiver-1.0" for capture
8*c66ec88fSEmmanuel Vadot
9*c66ec88fSEmmanuel VadotRequired property common to both I2S playback and capture:
10*c66ec88fSEmmanuel Vadot - reg: Base address and size of the IP core instance.
11*c66ec88fSEmmanuel Vadot - xlnx,dwidth: sample data width. Can be any of 16, 24.
12*c66ec88fSEmmanuel Vadot - xlnx,num-channels: Number of I2S streams. Can be any of 1, 2, 3, 4.
13*c66ec88fSEmmanuel Vadot		      supported channels = 2 * xlnx,num-channels
14*c66ec88fSEmmanuel Vadot
15*c66ec88fSEmmanuel VadotExample:
16*c66ec88fSEmmanuel Vadot
17*c66ec88fSEmmanuel Vadot	i2s_receiver@a0080000 {
18*c66ec88fSEmmanuel Vadot		compatible = "xlnx,i2s-receiver-1.0";
19*c66ec88fSEmmanuel Vadot		reg = <0x0 0xa0080000 0x0 0x10000>;
20*c66ec88fSEmmanuel Vadot		xlnx,dwidth = <0x18>;
21*c66ec88fSEmmanuel Vadot		xlnx,num-channels = <1>;
22*c66ec88fSEmmanuel Vadot	};
23*c66ec88fSEmmanuel Vadot	i2s_transmitter@a0090000 {
24*c66ec88fSEmmanuel Vadot		compatible = "xlnx,i2s-transmitter-1.0";
25*c66ec88fSEmmanuel Vadot		reg = <0x0 0xa0090000 0x0 0x10000>;
26*c66ec88fSEmmanuel Vadot		xlnx,dwidth = <0x18>;
27*c66ec88fSEmmanuel Vadot		xlnx,num-channels = <1>;
28*c66ec88fSEmmanuel Vadot	};
29