From: Weidong Wang wangweidong.a@awinic.com
The Awinic AW883XX is an I2S/TDM input, high efficiency digital Smart K audio amplifier with an integrated 10.25V smart boost convert
Add a DT schema for describing Awinic AW883xx audio amplifiers. They are controlled using I2C.
v4 -> v5: Remove the encapsulation of the alsa api Report the error value in the Kcontrol Use dev_dbg instead of pr_debug Change the log print level Removing software restrictions on volume Delete the aw883xx_fw_wrok Apply for gpio using the gpiod api Delete the reg node Delete the fade_step node The fade_step node was removed and the fade_step Kcontrol was added Delete the description of the reg node from aw883xx,awinic.yaml file Delete the sound-channel node from the aw883xx file Change the warning: unused variable 'aw883xx_dt_match' Change the warning: stack frame size (1272) exceeds limit (1024) in 'aw883xx_dev_cfg_load'
Weidong Wang (5): ASoC: codecs: Add i2c and codec registration for aw883xx and their associated operation functions ASoC: codecs: Implementation of aw883xx configuration file parsing function ASoC: codecs: aw883xx chip control logic, such as power on and off ASoC: codecs: Configure aw883xx chip register as well as Kconfig and Makefile ASoC: dt-bindings: Add schema for "awinic,aw883xx"
.../bindings/sound/awinic,aw883xx.yaml | 49 + sound/soc/codecs/Kconfig | 10 + sound/soc/codecs/Makefile | 7 + sound/soc/codecs/aw883xx/aw883xx.c | 1673 ++++++++++++ sound/soc/codecs/aw883xx/aw883xx.h | 105 + sound/soc/codecs/aw883xx/aw883xx_bin_parse.c | 1312 ++++++++++ sound/soc/codecs/aw883xx/aw883xx_bin_parse.h | 145 ++ sound/soc/codecs/aw883xx/aw883xx_data_type.h | 148 ++ sound/soc/codecs/aw883xx/aw883xx_device.c | 1629 ++++++++++++ sound/soc/codecs/aw883xx/aw883xx_device.h | 543 ++++ sound/soc/codecs/aw883xx/aw883xx_init.c | 635 +++++ .../soc/codecs/aw883xx/aw883xx_pid_2049_reg.h | 2300 +++++++++++++++++ 12 files changed, 8556 insertions(+) create mode 100644 Documentation/devicetree/bindings/sound/ awinic,aw883xx.yaml create mode 100644 sound/soc/codecs/aw883xx/aw883xx.c create mode 100644 sound/soc/codecs/aw883xx/aw883xx.h create mode 100644 sound/soc/codecs/aw883xx/aw883xx_bin_parse.c create mode 100644 sound/soc/codecs/aw883xx/aw883xx_bin_parse.h create mode 100644 sound/soc/codecs/aw883xx/aw883xx_data_type.h create mode 100644 sound/soc/codecs/aw883xx/aw883xx_device.c create mode 100644 sound/soc/codecs/aw883xx/aw883xx_device.h create mode 100644 sound/soc/codecs/aw883xx/aw883xx_init.c create mode 100644 sound/soc/codecs/aw883xx/aw883xx_pid_2049_reg.h
base-commit: 08ad43d554bacb9769c6a69d5f771f02f5ba411c