Re: [PATCH 30/44] ASoC: codecs: rt*: use .auto_selectable_formats
Mark Brown <[email protected]> Tue, 4 Aug 2026 18:39:30 +0100
| Newsgroups | org.kernel.vger.linux-sound |
|---|---|
| Message-ID | <[email protected]> |
--7YoWC21nV2nt9OEy
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
On Tue, Aug 04, 2026 at 12:43:07AM +0000, Kuninori Morimoto wrote:
> We can use .auto_selectable_formats. Let's adds it.
> diff --git a/sound/soc/codecs/rt5668.c b/sound/soc/codecs/rt5668.c
> index 4154bad276101..1a4a928c7c3c6 100644
> --- a/sound/soc/codecs/rt5668.c
> +++ b/sound/soc/codecs/rt5668.c
> @@ -2254,16 +2254,30 @@ static int rt5668_resume(struct snd_soc_component=
*component)
> #define RT5668_FORMATS (SNDRV_PCM_FMTBIT_S16_LE | SNDRV_PCM_FMTBIT_S20_3=
LE | \
> SNDRV_PCM_FMTBIT_S24_LE | SNDRV_PCM_FMTBIT_S8)
> =20
> +static const u64 rt5668_selectable_formats =3D
> + SND_SOC_POSSIBLE_DAIFMT_I2S |
> + SND_SOC_POSSIBLE_DAIFMT_LEFT_J |
> + SND_SOC_POSSIBLE_DAIFMT_DSP_A |
> + SND_SOC_POSSIBLE_DAIFMT_DSP_B |
> + SND_SOC_POSSIBLE_DAIFMT_NB_NF |
> + SND_SOC_POSSIBLE_DAIFMT_NB_IF |
> + SND_SOC_POSSIBLE_DAIFMT_IB_NF |
> + SND_SOC_POSSIBLE_DAIFMT_IB_IF;
> +
> static const struct snd_soc_dai_ops rt5668_aif1_dai_ops =3D {
> .hw_params =3D rt5668_hw_params,
> .set_fmt =3D rt5668_set_dai_fmt,
> .set_tdm_slot =3D rt5668_set_tdm_slot,
> + .auto_selectable_formats =3D &rt5668_selectable_formats,
> + .num_auto_selectable_formats =3D 1,
> };
> =20
> static const struct snd_soc_dai_ops rt5668_aif2_dai_ops =3D {
> .hw_params =3D rt5668_hw_params,
> .set_fmt =3D rt5668_set_dai_fmt,
> .set_bclk_ratio =3D rt5668_set_bclk_ratio,
> + .auto_selectable_formats =3D &rt5668_selectable_formats,
> + .num_auto_selectable_formats =3D 1,
> };
The ops special case DAI2 for set_dai_fmt() so it'll need a different
set of formats. Similarly for rt5682.
--7YoWC21nV2nt9OEy
Content-Type: application/pgp-signature; name="signature.asc"
-----BEGIN PGP SIGNATURE-----
iQEzBAABCgAdFiEEreZoqmdXGLWf4p/qJNaLcl1Uh9AFAmpyI9EACgkQJNaLcl1U
h9D2/gf/bzeupqZKHwxveG1Sg6V+/BpV64XInRaWR/co9nu8fMAGTv7BD/1LjNpD
DKtzRJ0g7qZJ5DHcY5FLyAy3ZHvcPKjmSv3TU5M/r0Dn2bStrf2OWrtCXK2nTfuC
V3ah/ruQp+2Mb00lF8KnRtDtdIFL270ocFK33ptnBBjm+B+u81PHnrNZyzKCeMNE
lYWu3DcB74aH5I5HpmtBrH4IFi9THRs95TBdYvfl5vmHUkVPsyCZzu+ey7cPaWi9
xaB6aFXf9aAYhhU6wpYBdFDEUjpOm8RaLpbEYgV5mYofI2dW17Xl2gzfqrja0DRD
Z1j1ocw7V743JG3hlFPx+49hlsB9NQ==
=EGSg
-----END PGP SIGNATURE-----
--7YoWC21nV2nt9OEy--