diff options
author | Lars-Peter Clausen <lars@metafoo.de> | 2015-01-12 04:27:20 -0500 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2015-01-14 14:04:57 -0500 |
commit | e46c93669349072f5caca853f5618cfa01b86008 (patch) | |
tree | d810795f3542215698bc06de799b42d41ee190ba /sound/soc/soc-core.c | |
parent | bbcdb69dfcbd8842ee2a54265abd3e53cb3089e2 (diff) |
ASoC: Update snd_soc_dai_set_tdm_slot() documentation
There have been some conflicting interpretations of how
snd_soc_dai_set_tdm_slot() is supposed to work. This patch updates the
documentation to be more specific on the exact semantics to avoid such
problems in the future.
Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc/soc-core.c')
-rw-r--r-- | sound/soc/soc-core.c | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/sound/soc/soc-core.c b/sound/soc/soc-core.c index 985052b3fbed..64e047dc7cdf 100644 --- a/sound/soc/soc-core.c +++ b/sound/soc/soc-core.c | |||
@@ -2119,15 +2119,27 @@ static int snd_soc_xlate_tdm_slot_mask(unsigned int slots, | |||
2119 | } | 2119 | } |
2120 | 2120 | ||
2121 | /** | 2121 | /** |
2122 | * snd_soc_dai_set_tdm_slot - configure DAI TDM. | 2122 | * snd_soc_dai_set_tdm_slot() - Configures a DAI for TDM operation |
2123 | * @dai: DAI | 2123 | * @dai: The DAI to configure |
2124 | * @tx_mask: bitmask representing active TX slots. | 2124 | * @tx_mask: bitmask representing active TX slots. |
2125 | * @rx_mask: bitmask representing active RX slots. | 2125 | * @rx_mask: bitmask representing active RX slots. |
2126 | * @slots: Number of slots in use. | 2126 | * @slots: Number of slots in use. |
2127 | * @slot_width: Width in bits for each slot. | 2127 | * @slot_width: Width in bits for each slot. |
2128 | * | 2128 | * |
2129 | * Configures a DAI for TDM operation. Both mask and slots are codec and DAI | 2129 | * This function configures the specified DAI for TDM operation. @slot contains |
2130 | * specific. | 2130 | * the total number of slots of the TDM stream and @slot_with the width of each |
2131 | * slot in bit clock cycles. @tx_mask and @rx_mask are bitmasks specifying the | ||
2132 | * active slots of the TDM stream for the specified DAI, i.e. which slots the | ||
2133 | * DAI should write to or read from. If a bit is set the corresponding slot is | ||
2134 | * active, if a bit is cleared the corresponding slot is inactive. Bit 0 maps to | ||
2135 | * the first slot, bit 1 to the second slot and so on. The first active slot | ||
2136 | * maps to the first channel of the DAI, the second active slot to the second | ||
2137 | * channel and so on. | ||
2138 | * | ||
2139 | * TDM mode can be disabled by passing 0 for @slots. In this case @tx_mask, | ||
2140 | * @rx_mask and @slot_width will be ignored. | ||
2141 | * | ||
2142 | * Returns 0 on success, a negative error code otherwise. | ||
2131 | */ | 2143 | */ |
2132 | int snd_soc_dai_set_tdm_slot(struct snd_soc_dai *dai, | 2144 | int snd_soc_dai_set_tdm_slot(struct snd_soc_dai *dai, |
2133 | unsigned int tx_mask, unsigned int rx_mask, int slots, int slot_width) | 2145 | unsigned int tx_mask, unsigned int rx_mask, int slots, int slot_width) |