xref: /freebsd/sys/contrib/device-tree/Bindings/sound/tdm-slot.txt (revision 2e3507c25e42292b45a5482e116d278f5515d04d)
1TDM slot:
2
3This specifies audio DAI's TDM slot.
4
5TDM slot properties:
6dai-tdm-slot-num : Number of slots in use.
7dai-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
10
11For instance:
12	dai-tdm-slot-num = <2>;
13	dai-tdm-slot-width = <8>;
14	dai-tdm-slot-tx-mask = <0 1>;
15	dai-tdm-slot-rx-mask = <1 0>;
16
17And 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
19the 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.
25
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.
30