[PATCH 00/44] ASoC: codec: use .auto_selectable_formats

Kuninori Morimoto <[email protected]> Tue, 4 Aug 2026 00:40:01 +0000
Newsgroups gmane.linux.sound
Message-ID <[email protected]>
Hi Mark, all

This is Step2 of "use .auto_selectable_formats" patch-set

o: done
x: this patch-set

	[o] Step1: ASoC: a to b
	[x] Step2: ASoC: codec: ...
	[ ] Step3: ASoC: d to r
	[ ] Step4: ASoC: r to x

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.

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


Kuninori Morimoto (44):
  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: 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

 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/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          | 15 +++++++++++++++
 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/da7218.c         | 12 ++++++++++++
 sound/soc/codecs/da7219.c         | 12 ++++++++++++
 sound/soc/codecs/da732x.c         | 17 +++++++++++++++++
 sound/soc/codecs/da9055.c         |  8 ++++++++
 sound/soc/codecs/es7134.c         |  6 ++++++
 sound/soc/codecs/es7241.c         |  7 +++++++
 sound/soc/codecs/es8311.c         | 18 ++++++++++++++++++
 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/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/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         | 18 ++++++++++++++++++
 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  | 14 ++++++++++++++
 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    | 14 ++++++++++++++
 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         | 11 +++++++++++
 sound/soc/codecs/wm8741.c         | 13 +++++++++++++
 sound/soc/codecs/wm8750.c         | 13 +++++++++++++
 sound/soc/codecs/wm8753.c         | 20 ++++++++++++++++++++
 sound/soc/codecs/wm8770.c         | 11 +++++++++++
 sound/soc/codecs/wm8776.c         | 13 +++++++++++++
 sound/soc/codecs/wm8804.c         | 15 ++++++++++++++-
 sound/soc/codecs/wm8900.c         | 18 ++++++++++++++++++
 sound/soc/codecs/wm8903.c         | 18 ++++++++++++++++++
 sound/soc/codecs/wm8904.c         | 18 ++++++++++++++++++
 sound/soc/codecs/wm8940.c         | 13 +++++++++++++
 sound/soc/codecs/wm8955.c         | 18 ++++++++++++++++++
 sound/soc/codecs/wm8960.c         | 13 +++++++++++++
 sound/soc/codecs/wm8961.c         | 18 ++++++++++++++++++
 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         | 18 ++++++++++++++++++
 sound/soc/codecs/wm8988.c         | 13 +++++++++++++
 sound/soc/codecs/wm8990.c         |  9 +++++++++
 sound/soc/codecs/wm8991.c         |  9 +++++++++
 sound/soc/codecs/wm8993.c         | 18 ++++++++++++++++++
 sound/soc/codecs/wm8994.c         | 20 ++++++++++++++++++++
 sound/soc/codecs/wm8995.c         | 20 ++++++++++++++++++++
 sound/soc/codecs/wm8996.c         | 12 ++++++++++++
 sound/soc/codecs/wm9081.c         | 18 ++++++++++++++++++
 sound/soc/codecs/wm9713.c         | 13 +++++++++++++
 sound/soc/codecs/zl38060.c        |  6 ++++++
 202 files changed, 2173 insertions(+), 1 deletion(-)

-- 
2.53.0