blob: 4bb513ae62fc67797857ddf11f433d49343b7743 [file] [log] [blame]
Xiubo Li72899ad2014-02-14 09:34:34 +08001TDM slot:
2
3This specifies audio DAI's TDM slot.
4
5TDM slot properties:
6dai-tdm-slot-num : Number of slots in use.
Jyri Sarha61310842015-09-09 21:27:43 +03007dai-tdm-slot-width : Width in bits for each slot.
8dai-tdm-slot-tx-mask : Transmit direction slot mask, optional
9dai-tdm-slot-rx-mask : Receive direction slot mask, optional
Xiubo Li72899ad2014-02-14 09:34:34 +080010
11For instance:
12 dai-tdm-slot-num = <2>;
13 dai-tdm-slot-width = <8>;
Jyri Sarha61310842015-09-09 21:27:43 +030014 dai-tdm-slot-tx-mask = <0 1>;
15 dai-tdm-slot-rx-mask = <1 0>;
Xiubo Li72899ad2014-02-14 09:34:34 +080016
Dan Murphy8a9144c12020-06-02 14:35:23 -050017And for each specified driver, there could be one .of_xlate_tdm_slot_mask()
18to specify an explicit mapping of the channels and the slots. If it's absent
Xiubo Li72899ad2014-02-14 09:34:34 +080019the default snd_soc_of_xlate_tdm_slot_mask() will be used to generating the
20tx and rx masks.
21
22For snd_soc_of_xlate_tdm_slot_mask(), the tx and rx masks will use a 1 bit
23for an active slot as default, and the default active bits are at the LSB of
24the masks.
Jyri Sarha61310842015-09-09 21:27:43 +030025
26The explicit masks are given as array of integers, where the first
27number presents bit-0 (LSB), second presents bit-1, etc. Any non zero
28number is considered 1 and 0 is 0. snd_soc_of_xlate_tdm_slot_mask()
29does not do anything, if either mask is set non zero value.