[PATCH 1/2] ALSA: pcm: Add support for 705.6KHz and 768KHz sample rate
Shengjiu Wang
shengjiu.wang at gmail.com
Tue Apr 27 13:12:33 CEST 2021
On Tue, Apr 27, 2021 at 6:56 PM Takashi Iwai <tiwai at suse.de> wrote:
>
> On Tue, 27 Apr 2021 12:34:22 +0200,
> Shengjiu Wang wrote:
> >
> > Some high resolution codecs support 705.6KHz and 768KHz rates.
> > So extend supported sample rate to 768kHz in pcm.h.
> >
> > Signed-off-by: Shengjiu Wang <shengjiu.wang at nxp.com>
>
> How many devices require it for now?
I have two devices, AK4458, AK5558.
>
> I don't want to extend the core definitions blindly unless those rates
> are really commonly used. You can add those specific rates in the
> codec driver instead.
Ok, this is an option.
>
>
> thanks,
>
> Takashi
>
> > ---
> > include/sound/pcm.h | 5 +++++
> > 1 file changed, 5 insertions(+)
> >
> > diff --git a/include/sound/pcm.h b/include/sound/pcm.h
> > index 2e1200d17d0c..88056824ffec 100644
> > --- a/include/sound/pcm.h
> > +++ b/include/sound/pcm.h
> > @@ -121,6 +121,8 @@ struct snd_pcm_ops {
> > #define SNDRV_PCM_RATE_192000 (1<<12) /* 192000Hz */
> > #define SNDRV_PCM_RATE_352800 (1<<13) /* 352800Hz */
> > #define SNDRV_PCM_RATE_384000 (1<<14) /* 384000Hz */
> > +#define SNDRV_PCM_RATE_705600 (1<<15) /* 705600Hz */
> > +#define SNDRV_PCM_RATE_768000 (1<<16) /* 768000Hz */
> >
> > #define SNDRV_PCM_RATE_CONTINUOUS (1<<30) /* continuous range */
> > #define SNDRV_PCM_RATE_KNOT (1<<31) /* supports more non-continuos rates */
> > @@ -136,6 +138,9 @@ struct snd_pcm_ops {
> > #define SNDRV_PCM_RATE_8000_384000 (SNDRV_PCM_RATE_8000_192000|\
> > SNDRV_PCM_RATE_352800|\
> > SNDRV_PCM_RATE_384000)
> > +#define SNDRV_PCM_RATE_8000_768000 (SNDRV_PCM_RATE_8000_768000|\
> > + SNDRV_PCM_RATE_705600|\
> > + SNDRV_PCM_RATE_768000)
> > #define _SNDRV_PCM_FMTBIT(fmt) (1ULL << (__force int)SNDRV_PCM_FORMAT_##fmt)
> > #define SNDRV_PCM_FMTBIT_S8 _SNDRV_PCM_FMTBIT(S8)
> > #define SNDRV_PCM_FMTBIT_U8 _SNDRV_PCM_FMTBIT(U8)
> > --
> > 2.27.0
> >
More information about the Alsa-devel
mailing list