This patchset adds PWM-DAC audio support for the StarFive JH7110 SoC. The PWM-DAC module does not require a hardware codec, but a dummy codec is needed for the driver. The dummy spdif codec driver, which is already upstream, is compatible with the one which JH7110 PWM-DAC needed. So we use it as the dummy codec driver for the JH7110 PWM-DAC module.
The third patch depends on tag next-20230809 in linux-next branch.
Changes since v2: - Rebase on tag v6.5-rc6. - Drop the component controls. - Use dev_err_probe() instead of dev_err() in some cases. - Add a new struct jh7110_pwmdac_cfg to save the configuration. - Add a new function jh7110_pwmdac_init_params() to initialize the parameters.
Changes since v1: - Rebase on tag v6.5-rc3. - Drop patch 1 and 2. - Drop the unneeded space and line in patch 3. - Use the dummy spdif codec driver instead of adding a new one. - Change "dai_link->stop_dma_first = 1" to "dai_link->trigger_stop = SND_SOC_TRIGGER_ORDER_LDC" in patch 4. - Drop the unneeded "status = "okay;" in patch 5. - Change some node names in patch 5.
--- v2: https://lore.kernel.org/all/20230731032829.127864-1-hal.feng@starfivetech.co... v1: https://lore.kernel.org/all/20230626110909.38718-1-hal.feng@starfivetech.com...
Hal Feng (3): ASoC: dt-bindings: Add StarFive JH7110 PWM-DAC controller ASoC: starfive: Add JH7110 PWM-DAC driver riscv: dts: starfive: Add JH7110 PWM-DAC support
.../sound/starfive,jh7110-pwmdac.yaml | 76 +++ MAINTAINERS | 7 + .../jh7110-starfive-visionfive-2.dtsi | 141 +++++ arch/riscv/boot/dts/starfive/jh7110.dtsi | 159 ++++++ sound/soc/starfive/Kconfig | 9 + sound/soc/starfive/Makefile | 1 + sound/soc/starfive/jh7110_pwmdac.c | 529 ++++++++++++++++++ 7 files changed, 922 insertions(+) create mode 100644 Documentation/devicetree/bindings/sound/starfive,jh7110-pwmdac.yaml create mode 100644 sound/soc/starfive/jh7110_pwmdac.c
base-commit: 2ccdd1b13c591d306f0401d98dedc4bdcd02b421