The Awinic smart speaker/amp drivers were merged in a very
"downstream-brained" state, where configuration was only really
determined by the binary "firmware" (register list) file instead
of properly participating in the ASoC system. Let's start
untangling this mess. This series makes aw88261 actually usable
on devices like fairphone-fp5, motorola-dubai and xiaomi-pipa.

v3:
- Set default volume to the halfway point
- Restored mute-until-powered-on behavior
- Made TDM slot_width override the hw_params physical_width
- Made set_tdm_slot(0) reset channel mapping to I2S default (L/R == 0/1)
- Pulled T-b tag

v2: https://lore.kernel.org/all/[email protected]/
v1: https://lore.kernel.org/all/[email protected]/

Val Packett (7):
  ASoC: codecs: aw88261: support changing sample rate and bit width
  ASoC: codecs: aw88261: add TDM support
  ASoC: codecs: aw88261: reduce log spam
  ASoC: codecs: aw88261: remove fade in/out on start/stop
  ASoC: codecs: aw88261: remove async start
  ASoC: codecs: aw88261: fix incorrect masks for boost regs
  ASoC: codecs: aw88261: make volume control usable

 sound/soc/codecs/aw88261.c | 627 ++++++++++++++++++++-----------------
 sound/soc/codecs/aw88261.h | 185 ++++++++++-
 2 files changed, 516 insertions(+), 296 deletions(-)

-- 
2.53.0


Reply via email to