]> git.proxmox.com Git - mirror_ubuntu-zesty-kernel.git/blame - Documentation/devicetree/bindings/sound/fsl-sai.txt
ASoC: fsl_sai: Make Synchronous and Asynchronous modes exclusive
[mirror_ubuntu-zesty-kernel.git] / Documentation / devicetree / bindings / sound / fsl-sai.txt
CommitLineData
b6344859
XL
1Freescale Synchronous Audio Interface (SAI).
2
3The SAI is based on I2S module that used communicating with audio codecs,
4which provides a synchronous audio interface that supports fullduplex
5serial interfaces with frame synchronization such as I2S, AC97, TDM, and
6codec/DSP interfaces.
7
8
9Required properties:
c7540644 10- compatible: Compatible list, contains "fsl,vf610-sai" or "fsl,imx6sx-sai".
b6344859
XL
11- reg: Offset and length of the register set for the device.
12- clocks: Must contain an entry for each entry in clock-names.
ca3e35c7
NC
13- clock-names : Must include the "bus" for register access and "mclk1" "mclk2"
14 "mclk3" for bit clock and frame clock providing.
b6344859
XL
15- dmas : Generic dma devicetree binding as described in
16 Documentation/devicetree/bindings/dma/dma.txt.
17- dma-names : Two dmas have to be defined, "tx" and "rx".
18- pinctrl-names: Must contain a "default" entry.
19- pinctrl-NNN: One property must exist for each entry in pinctrl-names.
20 See ../pinctrl/pinctrl-bindings.txt for details of the property values.
21- big-endian-regs: If this property is absent, the little endian mode will
22 be in use as default, or the big endian mode will be in use for all the
23 device registers.
24- big-endian-data: If this property is absent, the little endian mode will
25 be in use as default, or the big endian mode will be in use for all the
26 fifo data.
08fdf65e
NC
27- fsl,sai-synchronous-rx: This is a boolean property. If present, indicating
28 that SAI will work in the synchronous mode (sync Tx with Rx) which means
29 both the transimitter and receiver will send and receive data by following
30 receiver's bit clocks and frame sync clocks.
31- fsl,sai-asynchronous: This is a boolean property. If present, indicating
32 that SAI will work in the asynchronous mode, which means both transimitter
33 and receiver will send and receive data by following their own bit clocks
34 and frame sync clocks separately.
35
36Note:
37- If both fsl,sai-asynchronous and fsl,sai-synchronous-rx are absent, the
38 default synchronous mode (sync Rx with Tx) will be used, which means both
39 transimitter and receiver will send and receive data by following clocks
40 of transimitter.
ce7344a4 41- fsl,sai-asynchronous and fsl,sai-synchronous-rx are exclusive.
b6344859
XL
42
43Example:
44sai2: sai@40031000 {
45 compatible = "fsl,vf610-sai";
46 reg = <0x40031000 0x1000>;
47 pinctrl-names = "default";
48 pinctrl-0 = <&pinctrl_sai2_1>;
ca3e35c7
NC
49 clocks = <&clks VF610_CLK_PLATFORM_BUS>,
50 <&clks VF610_CLK_SAI2>,
51 <&clks 0>, <&clks 0>;
52 clock-names = "bus", "mclk1", "mclk2", "mclk3";
b6344859
XL
53 dma-names = "tx", "rx";
54 dmas = <&edma0 0 VF610_EDMA_MUXID0_SAI2_TX>,
55 <&edma0 0 VF610_EDMA_MUXID0_SAI2_RX>;
56 big-endian-regs;
57 big-endian-data;
58};