[PATCH 00/83] ASoC: use .auto_selectable_formats

Kuninori Morimoto <[email protected]>
Newsgroups dev.linux.lists.chrome-platform,dev.linux.lists.imx,dev.linux.lists.spacemit,org.infradead.lists.linux-riscv,org.kernel.vger.linux-mips,org.kernel.vger.linux-renesas-soc,org.kernel.vger.linux-sound
Message-ID <[email protected]>
Hi Mark, all

I have posted this patch as [RFC] when below. There was no objection
until today, so I post full patch-set.

	Date: Wed, 13 May 2026 00:11:35 +0000

Current ASoC supports snd_soc_daifmt_parse_format() which can specify DAI
format by "dai-format" property from DT.
But strictly speaking, it is SW settings, so doesn't match to DT's policy.

Current ASoC is supporting auto format select via
snd_soc_dai_ops :: .auto_selectable_formats.
But the user is very few today.

DT doesn't need to specify the DAI format via "dai-format", if both CPU
and Codec drivers were supporting .auto_selectable_formats. It will be
automatically selected from .auto_selectable_formats.

But, I noticed that current auto format select method can't handle all cases.
For example, current .auto_selectable_formats is like below

	static u64 xxx_auto_formats[] = {
(A)		/* First Priority */
		SND_SOC_POSSIBLE_DAIFMT_I2S	|
		SND_SOC_POSSIBLE_DAIFMT_LEFT_J	|
		SND_SOC_POSSIBLE_DAIFMT_NB_NF	|
		SND_SOC_POSSIBLE_DAIFMT_NB_IF	|	(x)
		SND_SOC_POSSIBLE_DAIFMT_IB_NF	|
		SND_SOC_POSSIBLE_DAIFMT_IB_IF,		(x)

		/* Second Priority */
(B)		SND_SOC_POSSIBLE_DAIFMT_DSP_A	|	(y)
		SND_SOC_POSSIBLE_DAIFMT_DSP_B,		(y)
	};

It try to find DAI format from (A) first, and next it will use (A | B).
But it can't handle the format if some format were independent.
For example, DSP_x (y) can't use with xB_IF (x), etc.

So, I would like to update the method. New method doesn't use OR.
It try to find DAI format from (a), next it will use (b).

	static u64 xxx_auto_formats[] = {
(a)		/* First Priority */
		SND_SOC_POSSIBLE_DAIFMT_I2S	|
		SND_SOC_POSSIBLE_DAIFMT_LEFT_J	|
		SND_SOC_POSSIBLE_DAIFMT_NB_NF	|
		SND_SOC_POSSIBLE_DAIFMT_NB_IF	|
		SND_SOC_POSSIBLE_DAIFMT_IB_NF	|
		SND_SOC_POSSIBLE_DAIFMT_IB_IF,

		/* Second Priority */
(b)		SND_SOC_POSSIBLE_DAIFMT_DSP_A	|
		SND_SOC_POSSIBLE_DAIFMT_DSP_B	|
		SND_SOC_POSSIBLE_DAIFMT_NB_NF	|
		SND_SOC_POSSIBLE_DAIFMT_IB_NF,
	};

Switch old method to new method, Current auto select user need to update
.auto_selectable_formats. Fortunately, current few users doesn't have
above limitation. update (A)(B) to (a)(b) style is possible.

	a = A
	b = A | B

I would like to update method, and add .auto_selectable_formats
support on all drivers.

One note is that auto select might not find best format on some CPU/Codec
combination. So "dai-format" is necessary anyway.

And, there haven't been any big problems on .auto_selectable_formats,
because there were few users.
But if all drivers try to use this, it cannot be denied that they may
encounter unknown problems... In such case, "dai-format" can help, though.

Kuninori Morimoto (83):
  ASoC: remove SND_SOC_POSSIBLE_xBx_xFx
  ASoC: codecs: framer-codec: don't use array if single pattarn
  ASoC: codecs: idt821034: don't use array if single pattarn
  ASoC: codecs: peb2466: don't use array if single pattarn
  ASoC: codecs: ak4619: update auto select format
  ASoC: codecs: pcm3168a: update auto select format
  ASoC: renesas: rcar: update auto select format
  ASoC: update auto format selection method
  ASoC: audio-graph-card2: recommend to use auto select DAI format
  ASoC: amd: use .auto_selectable_formats
  ASoC: apple: use .auto_selectable_formats
  ASoC: atmel: use .auto_selectable_formats
  ASoC: au1x: use .auto_selectable_formats
  ASoC: bcm: use .auto_selectable_formats
  ASoC: cirrus: use .auto_selectable_formats
  ASoC: codecs: 88pm860x: use .auto_selectable_formats
  ASoC: codecs: ad1*: use .auto_selectable_formats
  ASoC: codecs: ab8500: use .auto_selectable_formats
  ASoC: codecs: adau*: use .auto_selectable_formats
  ASoC: codecs: adav80x: use .auto_selectable_formats
  ASoC: codecs: ak4*: use .auto_selectable_formats
  ASoC: codecs: ak5*: use .auto_selectable_formats
  ASoC: codecs: alc56*: use .auto_selectable_formats
  ASoC: codecs: arizona: use .auto_selectable_formats
  ASoC: codecs: cpcap: use .auto_selectable_formats
  ASoC: codecs: cros_ec_codec: use .auto_selectable_formats
  ASoC: codecs: cs35l*: use .auto_selectable_formats
  ASoC: codecs: cs42*: use .auto_selectable_formats
  ASoC: codecs: cs5*: use .auto_selectable_formats
  ASoC: codecs: cx2072x: use .auto_selectable_formats
  ASoC: codecs: da*: use .auto_selectable_formats
  ASoC: codecs: es*: use .auto_selectable_formats
  ASoC: codecs: inno_rk3036: use .auto_selectable_formats
  ASoC: codecs: isabelle: use .auto_selectable_formats
  ASoC: codecs: lm49453: use .auto_selectable_formats
  ASoC: codecs: lochnagar-sc: use .auto_selectable_formats
  ASoC: codecs: madera: use .auto_selectable_formats
  ASoC: codecs: max*: use .auto_selectable_formats
  ASoC: codecs: mc13783: use .auto_selectable_formats
  ASoC: codecs: ml26124: use .auto_selectable_formats
  ASoC: codecs: nau*: use .auto_selectable_formats
  ASoC: codecs: ntp8*: use .auto_selectable_formats
  ASoC: codecs: pcm*: use .auto_selectable_formats
  ASoC: codecs: rk33*: use .auto_selectable_formats
  ASoC: codecs: rtq912*: use .auto_selectable_formats
  ASoC: codecs: rt*: use .auto_selectable_formats
  ASoC: codecs: sgtl5000: use .auto_selectable_formats
  ASoC: codecs: si476x: use .auto_selectable_formats
  ASoC: codecs: sma130*: use .auto_selectable_formats
  ASoC: codecs: src4xxx: use .auto_selectable_formats
  ASoC: codecs: ssm*: use .auto_selectable_formats
  ASoC: codecs: sta*: use .auto_selectable_formats
  ASoC: codecs: tas*: use .auto_selectable_formats
  ASoC: codecs: tfa9879: use .auto_selectable_formats
  ASoC: codecs: tlv320*: use .auto_selectable_formats
  ASoC: codecs: tscs454: use .auto_selectable_formats
  ASoC: codecs: twl4030: use .auto_selectable_formats
  ASoC: codecs: uda13*: use .auto_selectable_formats
  ASoC: codecs: wm*: use .auto_selectable_formats
  ASoC: codecs: zl38060: use .auto_selectable_formats
  ASoC: dwc: use .auto_selectable_formats
  ASoC: fsl: use .auto_selectable_formats
  ASoC: hisilicon: use .auto_selectable_formats
  ASoC: img: use .auto_selectable_formats
  ASoC: jz4740: use .auto_selectable_formats
  ASoC: kirkwood: use .auto_selectable_formats
  ASoC: loongson: use .auto_selectable_formats
  ASoC: mediatek: use .auto_selectable_formats
  ASoC: meson: use .auto_selectable_formats
  ASoC: mxs: use .auto_selectable_formats
  ASoC: pxa: use .auto_selectable_formats
  ASoC: renesas: use .auto_selectable_formats
  ASoC: rockchip: use .auto_selectable_formats
  ASoC: samsung: use .auto_selectable_formats
  ASoC: spacemit: use .auto_selectable_formats
  ASoC: sti: use .auto_selectable_formats
  ASoC: stm: use .auto_selectable_formats
  ASoC: sunxi: use .auto_selectable_formats
  ASoC: tegra: use .auto_selectable_formats
  ASoC: ti: use .auto_selectable_formats
  ASoC: uniphier: use .auto_selectable_formats
  ASoC: ux500: use .auto_selectable_formats
  ASoC: xtensa: use .auto_selectable_formats

 include/sound/soc-dai.h                     |  15 +-
 sound/soc/amd/acp/acp-i2s.c                 |   6 +
 sound/soc/amd/raven/acp3x-i2s.c             |   6 +
 sound/soc/amd/vangogh/acp5x-i2s.c           |   6 +
 sound/soc/apple/mca.c                       |  10 +
 sound/soc/atmel/atmel-i2s.c                 |   4 +
 sound/soc/atmel/atmel_ssc_dai.c             |   7 +
 sound/soc/atmel/mchp-i2s-mcc.c              |   9 +
 sound/soc/atmel/mchp-pdmc.c                 |   4 +
 sound/soc/au1x/i2sc.c                       |  11 ++
 sound/soc/au1x/psc-i2s.c                    |  11 ++
 sound/soc/bcm/bcm2835-i2s.c                 |  13 ++
 sound/soc/bcm/cygnus-ssp.c                  |   7 +
 sound/soc/cirrus/ep93xx-i2s.c               |  11 ++
 sound/soc/codecs/88pm860x-codec.c           |   6 +
 sound/soc/codecs/ab8500-codec.c             |  13 ++
 sound/soc/codecs/ad1836.c                   |   6 +
 sound/soc/codecs/ad193x.c                   |  10 +
 sound/soc/codecs/adau1372.c                 |  12 ++
 sound/soc/codecs/adau1373.c                 |  12 ++
 sound/soc/codecs/adau1701.c                 |  11 ++
 sound/soc/codecs/adau17x1.c                 |  13 ++
 sound/soc/codecs/adau1977.c                 |  13 ++
 sound/soc/codecs/adau7118.c                 |  12 ++
 sound/soc/codecs/adav80x.c                  |   8 +
 sound/soc/codecs/ak4104.c                   |   7 +
 sound/soc/codecs/ak4118.c                   |   7 +
 sound/soc/codecs/ak4458.c                   |   9 +
 sound/soc/codecs/ak4535.c                   |   6 +
 sound/soc/codecs/ak4613.c                   |   5 -
 sound/soc/codecs/ak4619.c                   |   8 +-
 sound/soc/codecs/ak4642.c                   |   6 +
 sound/soc/codecs/ak4671.c                   |   7 +
 sound/soc/codecs/ak5386.c                   |   6 +
 sound/soc/codecs/ak5558.c                   |   7 +
 sound/soc/codecs/alc5623.c                  |  11 ++
 sound/soc/codecs/alc5632.c                  |  13 ++
 sound/soc/codecs/arizona.c                  |  12 ++
 sound/soc/codecs/cpcap.c                    |  18 ++
 sound/soc/codecs/cros_ec_codec.c            |   8 +
 sound/soc/codecs/cs35l33.c                  |   6 +
 sound/soc/codecs/cs35l35.c                  |   8 +
 sound/soc/codecs/cs35l36.c                  |  12 ++
 sound/soc/codecs/cs35l41.c                  |  10 +
 sound/soc/codecs/cs35l45.c                  |  10 +
 sound/soc/codecs/cs35l56.c                  |  10 +
 sound/soc/codecs/cs40l50-codec.c            |   9 +
 sound/soc/codecs/cs4234.c                   |   9 +
 sound/soc/codecs/cs4265.c                   |   7 +
 sound/soc/codecs/cs4270.c                   |   6 +
 sound/soc/codecs/cs4271.c                   |   6 +
 sound/soc/codecs/cs42l42.c                  |   9 +
 sound/soc/codecs/cs42l43.c                  |  12 ++
 sound/soc/codecs/cs42l51.c                  |   7 +
 sound/soc/codecs/cs42l52.c                  |  13 ++
 sound/soc/codecs/cs42l56.c                  |   8 +
 sound/soc/codecs/cs42l73.c                  |   7 +
 sound/soc/codecs/cs42l84.c                  |   6 +
 sound/soc/codecs/cs42xx8.c                  |   8 +
 sound/soc/codecs/cs43130.c                  |  14 ++
 sound/soc/codecs/cs4341.c                   |   8 +
 sound/soc/codecs/cs4349.c                   |   7 +
 sound/soc/codecs/cs48l32.c                  |  12 ++
 sound/soc/codecs/cs530x.c                   |   9 +
 sound/soc/codecs/cs53l30.c                  |   8 +
 sound/soc/codecs/cx2072x.c                  |  12 ++
 sound/soc/codecs/da7210.c                   |   7 +
 sound/soc/codecs/da7213.c                   |   5 -
 sound/soc/codecs/da7218.c                   |  12 ++
 sound/soc/codecs/da7219.c                   |  12 ++
 sound/soc/codecs/da732x.c                   |  18 ++
 sound/soc/codecs/da9055.c                   |   8 +
 sound/soc/codecs/es7134.c                   |   6 +
 sound/soc/codecs/es7241.c                   |   7 +
 sound/soc/codecs/es8311.c                   |  19 ++
 sound/soc/codecs/es8316.c                   |   9 +
 sound/soc/codecs/es8323.c                   |  13 ++
 sound/soc/codecs/es8326.c                   |   9 +
 sound/soc/codecs/es8328.c                   |   7 +
 sound/soc/codecs/es8375.c                   |  12 ++
 sound/soc/codecs/es8389.c                   |   9 +
 sound/soc/codecs/framer-codec.c             |   8 +-
 sound/soc/codecs/idt821034.c                |   9 +-
 sound/soc/codecs/inno_rk3036.c              |  12 ++
 sound/soc/codecs/isabelle.c                 |  13 ++
 sound/soc/codecs/lm49453.c                  |  15 ++
 sound/soc/codecs/lochnagar-sc.c             |   8 +
 sound/soc/codecs/madera.c                   |  12 ++
 sound/soc/codecs/max98088.c                 |  12 ++
 sound/soc/codecs/max98090.c                 |  12 ++
 sound/soc/codecs/max98095.c                 |  14 ++
 sound/soc/codecs/max98371.c                 |   7 +
 sound/soc/codecs/max98373-i2c.c             |  10 +
 sound/soc/codecs/max98388.c                 |  10 +
 sound/soc/codecs/max98390.c                 |  10 +
 sound/soc/codecs/max98396.c                 |  12 ++
 sound/soc/codecs/max9850.c                  |  11 ++
 sound/soc/codecs/max98520.c                 |  10 +
 sound/soc/codecs/max9860.c                  |  12 ++
 sound/soc/codecs/max9867.c                  |  10 +
 sound/soc/codecs/max98925.c                 |   8 +
 sound/soc/codecs/max98926.c                 |   8 +
 sound/soc/codecs/max98927.c                 |  10 +
 sound/soc/codecs/mc13783.c                  |  12 ++
 sound/soc/codecs/ml26124.c                  |   6 +
 sound/soc/codecs/nau8325.c                  |  11 ++
 sound/soc/codecs/nau8540.c                  |  11 ++
 sound/soc/codecs/nau8810.c                  |  12 ++
 sound/soc/codecs/nau8821.c                  |  11 ++
 sound/soc/codecs/nau8822.c                  |  12 ++
 sound/soc/codecs/nau8824.c                  |  11 ++
 sound/soc/codecs/nau8825.c                  |  11 ++
 sound/soc/codecs/ntp8835.c                  |   7 +
 sound/soc/codecs/ntp8918.c                  |   7 +
 sound/soc/codecs/pcm1681.c                  |   7 +
 sound/soc/codecs/pcm1754.c                  |   6 +
 sound/soc/codecs/pcm1789.c                  |   7 +
 sound/soc/codecs/pcm179x.c                  |   6 +
 sound/soc/codecs/pcm186x.c                  |   9 +
 sound/soc/codecs/pcm3060.c                  |   7 +
 sound/soc/codecs/pcm3168a.c                 |   8 +-
 sound/soc/codecs/pcm512x.c                  |   9 +
 sound/soc/codecs/peb2466.c                  |   9 +-
 sound/soc/codecs/rk3308_codec.c             |  11 ++
 sound/soc/codecs/rk3328_codec.c             |   9 +
 sound/soc/codecs/rt1011.c                   |  10 +
 sound/soc/codecs/rt1015.c                   |  10 +
 sound/soc/codecs/rt1016.c                   |  10 +
 sound/soc/codecs/rt1019.c                   |  10 +
 sound/soc/codecs/rt1305.c                   |  10 +
 sound/soc/codecs/rt1308.c                   |  10 +
 sound/soc/codecs/rt1318.c                   |  10 +
 sound/soc/codecs/rt274.c                    |   8 +
 sound/soc/codecs/rt286.c                    |   8 +
 sound/soc/codecs/rt298.c                    |   8 +
 sound/soc/codecs/rt5514.c                   |  12 ++
 sound/soc/codecs/rt5616.c                   |  10 +
 sound/soc/codecs/rt5631.c                   |  10 +
 sound/soc/codecs/rt5640.c                   |  10 +
 sound/soc/codecs/rt5645.c                   |  10 +
 sound/soc/codecs/rt5651.c                   |  10 +
 sound/soc/codecs/rt5659.c                   |  10 +
 sound/soc/codecs/rt5660.c                   |  10 +
 sound/soc/codecs/rt5663.c                   |  10 +
 sound/soc/codecs/rt5665.c                   |  10 +
 sound/soc/codecs/rt5668.c                   |  14 ++
 sound/soc/codecs/rt5670.c                   |  10 +
 sound/soc/codecs/rt5677.c                   |  10 +
 sound/soc/codecs/rt5682.c                   |  14 ++
 sound/soc/codecs/rt5682s.c                  |  14 ++
 sound/soc/codecs/rt9120.c                   |   9 +
 sound/soc/codecs/rt9123.c                   |   9 +
 sound/soc/codecs/rtq9124.c                  |   9 +
 sound/soc/codecs/rtq9128.c                  |   9 +
 sound/soc/codecs/sgtl5000.c                 |  11 ++
 sound/soc/codecs/si476x.c                   |  19 ++
 sound/soc/codecs/sma1303.c                  |  13 ++
 sound/soc/codecs/sma1307.c                  |  13 ++
 sound/soc/codecs/src4xxx.c                  |   8 +
 sound/soc/codecs/ssm2518.c                  |  13 ++
 sound/soc/codecs/ssm2602.c                  |  13 ++
 sound/soc/codecs/ssm3515.c                  |  10 +
 sound/soc/codecs/ssm4567.c                  |  13 ++
 sound/soc/codecs/sta32x.c                   |   9 +
 sound/soc/codecs/sta350.c                   |   9 +
 sound/soc/codecs/sta529.c                   |   7 +
 sound/soc/codecs/tas2552.c                  |  14 ++
 sound/soc/codecs/tas2562.c                  |  10 +
 sound/soc/codecs/tas2764.c                  |  12 ++
 sound/soc/codecs/tas2770.c                  |  12 ++
 sound/soc/codecs/tas2780.c                  |  10 +
 sound/soc/codecs/tas5086.c                  |   7 +
 sound/soc/codecs/tas571x.c                  |   7 +
 sound/soc/codecs/tas5720.c                  |   9 +
 sound/soc/codecs/tas6424.c                  |   9 +
 sound/soc/codecs/tfa9879.c                  |   9 +
 sound/soc/codecs/tlv320adc3xxx.c            |  15 ++
 sound/soc/codecs/tlv320adcx140.c            |  12 ++
 sound/soc/codecs/tlv320aic23.c              |   9 +
 sound/soc/codecs/tlv320aic26.c              |   8 +
 sound/soc/codecs/tlv320aic31xx.c            |  11 ++
 sound/soc/codecs/tlv320aic32x4.c            |   8 +
 sound/soc/codecs/tlv320aic3x.c              |  15 ++
 sound/soc/codecs/tlv320dac33.c              |   8 +
 sound/soc/codecs/tscs454.c                  |  15 ++
 sound/soc/codecs/twl4030.c                  |  12 ++
 sound/soc/codecs/uda1334.c                  |   6 +
 sound/soc/codecs/uda1342.c                  |   7 +
 sound/soc/codecs/uda1380.c                  |  11 ++
 sound/soc/codecs/wm2200.c                   |  10 +
 sound/soc/codecs/wm5100.c                   |  10 +
 sound/soc/codecs/wm8350.c                   |  13 ++
 sound/soc/codecs/wm8400.c                   |   9 +
 sound/soc/codecs/wm8510.c                   |  12 ++
 sound/soc/codecs/wm8523.c                   |  13 ++
 sound/soc/codecs/wm8524.c                   |   6 +
 sound/soc/codecs/wm8580.c                   |  15 ++
 sound/soc/codecs/wm8711.c                   |  13 ++
 sound/soc/codecs/wm8728.c                   |   9 +
 sound/soc/codecs/wm8731.c                   |  13 ++
 sound/soc/codecs/wm8737.c                   |  17 ++
 sound/soc/codecs/wm8741.c                   |  13 ++
 sound/soc/codecs/wm8750.c                   |  13 ++
 sound/soc/codecs/wm8753.c                   |  21 ++
 sound/soc/codecs/wm8770.c                   |  11 ++
 sound/soc/codecs/wm8776.c                   |  13 ++
 sound/soc/codecs/wm8804.c                   |  15 +-
 sound/soc/codecs/wm8900.c                   |  19 ++
 sound/soc/codecs/wm8903.c                   |  19 ++
 sound/soc/codecs/wm8904.c                   |  19 ++
 sound/soc/codecs/wm8940.c                   |  13 ++
 sound/soc/codecs/wm8955.c                   |  19 ++
 sound/soc/codecs/wm8960.c                   |  13 ++
 sound/soc/codecs/wm8961.c                   |  19 ++
 sound/soc/codecs/wm8962.c                   |  13 ++
 sound/soc/codecs/wm8971.c                   |  13 ++
 sound/soc/codecs/wm8974.c                   |  12 ++
 sound/soc/codecs/wm8978.c                   |  12 ++
 sound/soc/codecs/wm8983.c                   |  12 ++
 sound/soc/codecs/wm8985.c                   |  19 ++
 sound/soc/codecs/wm8988.c                   |  13 ++
 sound/soc/codecs/wm8990.c                   |   9 +
 sound/soc/codecs/wm8991.c                   |   9 +
 sound/soc/codecs/wm8993.c                   |  19 ++
 sound/soc/codecs/wm8994.c                   |  21 ++
 sound/soc/codecs/wm8995.c                   |  21 ++
 sound/soc/codecs/wm8996.c                   |  12 ++
 sound/soc/codecs/wm9081.c                   |  18 ++
 sound/soc/codecs/wm9713.c                   |  13 ++
 sound/soc/codecs/zl38060.c                  |   6 +
 sound/soc/dwc/dwc-i2s.c                     |   9 +
 sound/soc/fsl/fsl_audmix.c                  |   7 +
 sound/soc/fsl/fsl_esai.c                    |  13 ++
 sound/soc/fsl/fsl_mqs.c                     |   6 +
 sound/soc/fsl/fsl_sai.c                     |  18 ++
 sound/soc/fsl/fsl_ssi.c                     |  13 ++
 sound/soc/fsl/lpc3xxx-i2s.c                 |   4 +
 sound/soc/fsl/mpc5200_psc_i2s.c             |   4 +
 sound/soc/generic/audio-graph-card2.c       |  12 ++
 sound/soc/generic/test-component.c          |   7 -
 sound/soc/hisilicon/hi6210-i2s.c            |   7 +
 sound/soc/img/img-i2s-in.c                  |  12 +-
 sound/soc/img/img-i2s-out.c                 |  13 +-
 sound/soc/img/img-parallel-out.c            |   8 +-
 sound/soc/jz4740/jz4740-i2s.c               |   7 +
 sound/soc/kirkwood/kirkwood-i2s.c           |   7 +
 sound/soc/loongson/loongson_i2s.c           |   6 +
 sound/soc/mediatek/mt7986/mt7986-dai-etdm.c |  11 ++
 sound/soc/mediatek/mt8183/mt8183-dai-i2s.c  |   6 +
 sound/soc/mediatek/mt8183/mt8183-dai-tdm.c  |  10 +
 sound/soc/mediatek/mt8186/mt8186-dai-pcm.c  |  12 ++
 sound/soc/mediatek/mt8186/mt8186-dai-tdm.c  |  13 ++
 sound/soc/mediatek/mt8188/mt8188-dai-etdm.c |  15 ++
 sound/soc/mediatek/mt8188/mt8188-dai-pcm.c  |  11 ++
 sound/soc/mediatek/mt8192/mt8192-dai-tdm.c  |  11 ++
 sound/soc/mediatek/mt8195/mt8195-dai-etdm.c |  17 ++
 sound/soc/mediatek/mt8195/mt8195-dai-pcm.c  |  11 ++
 sound/soc/mediatek/mt8365/mt8365-dai-i2s.c  |  10 +
 sound/soc/mediatek/mt8365/mt8365-dai-pcm.c  |  11 ++
 sound/soc/meson/t9015.c                     |   6 +
 sound/soc/mxs/mxs-saif.c                    |  10 +
 sound/soc/pxa/mmp-sspa.c                    |   6 +
 sound/soc/pxa/pxa-ssp.c                     |  11 ++
 sound/soc/pxa/pxa2xx-i2s.c                  |   6 +
 sound/soc/renesas/fsi.c                     |   5 -
 sound/soc/renesas/rcar/core.c               |  12 +-
 sound/soc/renesas/rcar/msiof.c              |   5 -
 sound/soc/renesas/rz-ssi.c                  |   9 +
 sound/soc/renesas/siu_dai.c                 |   6 +
 sound/soc/renesas/ssi.c                     |  13 ++
 sound/soc/rockchip/rockchip_i2s.c           |  25 ++-
 sound/soc/rockchip/rockchip_i2s_tdm.c       |  27 ++-
 sound/soc/rockchip/rockchip_pdm.c           |  14 +-
 sound/soc/rockchip/rockchip_sai.c           |  31 ++-
 sound/soc/samsung/i2s.c                     |  29 ++-
 sound/soc/samsung/pcm.c                     |   9 +
 sound/soc/soc-core.c                        | 160 +---------------
 sound/soc/soc-dai.c                         | 201 +++++++++++++++-----
 sound/soc/soc-utils.c                       |   7 -
 sound/soc/spacemit/k1_i2s.c                 |   7 +
 sound/soc/sti/uniperif_player.c             |  29 ++-
 sound/soc/sti/uniperif_reader.c             |  27 ++-
 sound/soc/stm/stm32_i2s.c                   |  12 ++
 sound/soc/stm/stm32_sai_sub.c               |  15 ++
 sound/soc/sunxi/sun4i-i2s.c                 |  13 ++
 sound/soc/sunxi/sun8i-codec.c               |  13 ++
 sound/soc/tegra/tegra20_i2s.c               |  10 +
 sound/soc/tegra/tegra210_i2s.c              |  13 ++
 sound/soc/tegra/tegra30_i2s.c               |  10 +
 sound/soc/ti/davinci-i2s.c                  |  14 +-
 sound/soc/ti/davinci-mcasp.c                |  14 ++
 sound/soc/ti/omap-mcbsp.c                   |  12 ++
 sound/soc/uniphier/aio-cpu.c                |   9 +
 sound/soc/ux500/ux500_msp_dai.c             |  33 ++--
 sound/soc/xtensa/xtfpga-i2s.c               |  12 +-
 295 files changed, 3191 insertions(+), 356 deletions(-)

-- 
2.43.0
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.