From: Peter Ujfalusi <peter.ujfalusi@ti.com>
To: Mark Brown <broonie@kernel.org>, Liam Girdwood <lgirdwood@gmail.com>
Cc: alsa-devel@alsa-project.org, jsarha@ti.com, zonque@gmail.com
Subject: Re: [PATCH] ASoC: davinci-mcasp: Fix rx rotation settings
Date: Wed, 3 Sep 2014 17:21:39 +0300 [thread overview]
Message-ID: <540723F3.4060405@ti.com> (raw)
In-Reply-To: <1409753841-31084-1-git-send-email-peter.ujfalusi@ti.com>
Mark,
On 09/03/2014 05:17 PM, Peter Ujfalusi wrote:
> We need to take into account the slot size as well when calculating the
> RROT for received data.
> This patch will fix S24_3LE audio capture.
Can you wait a bit, I need to test something with this patch...
>
> Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
> ---
> sound/soc/davinci/davinci-mcasp.c | 17 +++++++++--------
> 1 file changed, 9 insertions(+), 8 deletions(-)
>
> diff --git a/sound/soc/davinci/davinci-mcasp.c b/sound/soc/davinci/davinci-mcasp.c
> index 6a6b2ff7d7d7..267cd4937c7c 100644
> --- a/sound/soc/davinci/davinci-mcasp.c
> +++ b/sound/soc/davinci/davinci-mcasp.c
> @@ -463,11 +463,11 @@ static int davinci_mcasp_set_sysclk(struct snd_soc_dai *dai, int clk_id,
> }
>
> static int davinci_config_channel_size(struct davinci_mcasp *mcasp,
> - int word_length)
> + int slot_size, int word_length)
> {
> u32 fmt;
> u32 tx_rotate = (word_length / 4) & 0x7;
> - u32 rx_rotate = (32 - word_length) / 4;
> + u32 rx_rotate = (slot_size - word_length) / 4;
> u32 mask = (1ULL << word_length) - 1;
>
> /*
> @@ -726,7 +726,7 @@ static int davinci_mcasp_hw_params(struct snd_pcm_substream *substream,
> struct davinci_mcasp *mcasp = snd_soc_dai_get_drvdata(cpu_dai);
> struct davinci_pcm_dma_params *dma_params =
> &mcasp->dma_params[substream->stream];
> - int word_length;
> + int word_length, slot_size;
> int channels = params_channels(params);
> int period_size = params_period_size(params);
> int ret;
> @@ -766,31 +766,32 @@ static int davinci_mcasp_hw_params(struct snd_pcm_substream *substream,
> case SNDRV_PCM_FORMAT_U8:
> case SNDRV_PCM_FORMAT_S8:
> dma_params->data_type = 1;
> - word_length = 8;
> + slot_size = word_length = 8;
> break;
>
> case SNDRV_PCM_FORMAT_U16_LE:
> case SNDRV_PCM_FORMAT_S16_LE:
> dma_params->data_type = 2;
> - word_length = 16;
> + slot_size = word_length = 16;
> break;
>
> case SNDRV_PCM_FORMAT_U24_3LE:
> case SNDRV_PCM_FORMAT_S24_3LE:
> dma_params->data_type = 3;
> - word_length = 24;
> + slot_size = word_length = 24;
> break;
>
> case SNDRV_PCM_FORMAT_U24_LE:
> case SNDRV_PCM_FORMAT_S24_LE:
> dma_params->data_type = 4;
> word_length = 24;
> + slot_size = 32;
> break;
>
> case SNDRV_PCM_FORMAT_U32_LE:
> case SNDRV_PCM_FORMAT_S32_LE:
> dma_params->data_type = 4;
> - word_length = 32;
> + slot_size = word_length = 32;
> break;
>
> default:
> @@ -803,7 +804,7 @@ static int davinci_mcasp_hw_params(struct snd_pcm_substream *substream,
> else
> dma_params->acnt = dma_params->data_type;
>
> - davinci_config_channel_size(mcasp, word_length);
> + davinci_config_channel_size(mcasp, slot_size, word_length);
>
> return 0;
> }
>
--
Péter
next prev parent reply other threads:[~2014-09-03 14:21 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-09-03 14:17 [PATCH] ASoC: davinci-mcasp: Fix rx rotation settings Peter Ujfalusi
2014-09-03 14:21 ` Peter Ujfalusi [this message]
2014-09-03 14:41 ` Peter Ujfalusi
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=540723F3.4060405@ti.com \
--to=peter.ujfalusi@ti.com \
--cc=alsa-devel@alsa-project.org \
--cc=broonie@kernel.org \
--cc=jsarha@ti.com \
--cc=lgirdwood@gmail.com \
--cc=zonque@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.