[alsa-devel] [RFC PATCH] ASoC: omap-mcbsp: Add support for highter rate up to 384000
Peter Ujfalusi
peter.ujfalusi at ti.com
Thu Aug 8 12:51:25 CEST 2013
On 08/07/2013 09:28 PM, Michael Trimarchi wrote:
> Add support for highter rate up to 384000Khz. There are codecs in the
> market that can play up to this frequency.
> Test was done just with:
>
> #define OMAP_MCBSP_RATES (SNDRV_PCM_RATE_8000_192000)
>
> playing wav file 32bit/192000Khz stereo. Some glitch has observed
> but this should depend on the selected min buffer bytes that was
> left untouched in aplay and in the omap-pcm driver.
>
> Signed-off-by: Michael Trimarchi <michael at amarulasolutions.com>
> ---
> sound/soc/omap/omap-mcbsp.c | 8 +++++++-
> 1 file changed, 7 insertions(+), 1 deletion(-)
>
> diff --git a/sound/soc/omap/omap-mcbsp.c b/sound/soc/omap/omap-mcbsp.c
> index 7483efb..1e95f6a 100644
> --- a/sound/soc/omap/omap-mcbsp.c
> +++ b/sound/soc/omap/omap-mcbsp.c
> @@ -39,7 +39,9 @@
> #include "mcbsp.h"
> #include "omap-mcbsp.h"
>
> -#define OMAP_MCBSP_RATES (SNDRV_PCM_RATE_8000_96000)
> +#define OMAP_MCBSP_RATES (SNDRV_PCM_RATE_8000_192000 | \
I think only this change is enough for what you want to achieve.
> + SNDRV_PCM_RATE_CONTINUOUS | \
> + SNDRV_PCM_RATE_KNOT)
The _KNOT is for sure not needed and I would not set the CONTINUOUS either.
>
> #define OMAP_MCBSP_SOC_SINGLE_S16_EXT(xname, xmin, xmax, \
> xhandler_get, xhandler_put) \
> @@ -574,11 +576,15 @@ static struct snd_soc_dai_driver omap_mcbsp_dai = {
> .channels_max = 16,
> .rates = OMAP_MCBSP_RATES,
> .formats = SNDRV_PCM_FMTBIT_S16_LE | SNDRV_PCM_FMTBIT_S32_LE,
> + .rate_min = 8000,
> + .rate_max = 384000,
Why you want to limit the rates here?
> },
> .capture = {
> .channels_min = 1,
> .channels_max = 16,
> .rates = OMAP_MCBSP_RATES,
> + .rate_min = 8000,
> + .rate_max = 384000,
Same here, do not set these.
> .formats = SNDRV_PCM_FMTBIT_S16_LE | SNDRV_PCM_FMTBIT_S32_LE,
> },
> .ops = &mcbsp_dai_ops,
>
--
Péter
More information about the Alsa-devel
mailing list