summaryrefslogtreecommitdiffstats
path: root/sound/soc/soc-utils.c
diff options
context:
space:
mode:
authorRichard Fitzgerald <rf@opensource.cirrus.com>2022-08-15 12:33:46 +0100
committerMark Brown <broonie@kernel.org>2022-08-15 17:23:26 +0100
commitefe30e2cb6ff87467389cece8ce604f6601059f9 (patch)
tree506ead9d9b6a72d882a3edfdaa5bcc63823df944 /sound/soc/soc-utils.c
parent36b99942d4770e91d58e7578480db2be8e059c80 (diff)
downloadlinux-stable-efe30e2cb6ff87467389cece8ce604f6601059f9.tar.gz
linux-stable-efe30e2cb6ff87467389cece8ce604f6601059f9.tar.bz2
linux-stable-efe30e2cb6ff87467389cece8ce604f6601059f9.zip
ASoC: soc-utils: Improve kerneldoc for snd_soc_tdm_params_to_bclk()
The statement that snd_soc_tdm_params_to_bclk() is equivalent to snd_soc_params_to_bclk() if tdm_width==tdm_slots==0 is not accurate, it is only true is slot_multiple is also <2. However, the description of special-case behaviour in terms of pairs of tdm_width and tdm_slot values is not particularly helpful so we might as well take the opportunity to rework the description to say the same thing in a simpler way. The behaviour of a pair of values is obvious from a description of each argument. At the same time make a few edits to clarify the rest of the description. Signed-off-by: Richard Fitzgerald <rf@opensource.cirrus.com> Link: https://lore.kernel.org/r/20220815113346.3805075-1-rf@opensource.cirrus.com Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc/soc-utils.c')
-rw-r--r--sound/soc/soc-utils.c23
1 files changed, 12 insertions, 11 deletions
diff --git a/sound/soc/soc-utils.c b/sound/soc/soc-utils.c
index 70c380c0ac7b..a3b6df2378b4 100644
--- a/sound/soc/soc-utils.c
+++ b/sound/soc/soc-utils.c
@@ -56,23 +56,24 @@ EXPORT_SYMBOL_GPL(snd_soc_params_to_bclk);
/**
* snd_soc_tdm_params_to_bclk - calculate bclk from params and tdm slot info.
*
- * Calculate the bclk from the params sample rate and the tdm slot count and
- * tdm slot width. Either or both of tdm_width and tdm_slots can be 0.
+ * Calculate the bclk from the params sample rate, the tdm slot count and the
+ * tdm slot width. Optionally round-up the slot count to a given multiple.
+ * Either or both of tdm_width and tdm_slots can be 0.
*
- * If tdm_width == 0 and tdm_slots > 0: the params_width will be used.
- * If tdm_width > 0 and tdm_slots == 0: the params_channels will be used
- * as the slot count.
- * Both tdm_width and tdm_slots are 0: this is equivalent to calling
- * snd_soc_params_to_bclk().
+ * If tdm_width == 0: use params_width() as the slot width.
+ * If tdm_slots == 0: use params_channels() as the slot count.
*
- * If slot_multiple > 1 the slot count (or params_channels if tdm_slots == 0)
- * will be rounded up to a multiple of this value. This is mainly useful for
+ * If slot_multiple > 1 the slot count (or params_channels() if tdm_slots == 0)
+ * will be rounded up to a multiple of slot_multiple. This is mainly useful for
* I2S mode, which has a left and right phase so the number of slots is always
* a multiple of 2.
*
+ * If tdm_width == 0 && tdm_slots == 0 && slot_multiple < 2, this is equivalent
+ * to calling snd_soc_params_to_bclk().
+ *
* @params: Pointer to struct_pcm_hw_params.
- * @tdm_width: Width in bits of the tdm slots.
- * @tdm_slots: Number of tdm slots per frame.
+ * @tdm_width: Width in bits of the tdm slots. Must be >= 0.
+ * @tdm_slots: Number of tdm slots per frame. Must be >= 0.
* @slot_multiple: If >1 roundup slot count to a multiple of this value.
*
* Return: bclk frequency in Hz, else a negative error code if params format