mbox series

[00/16] add driver to support firmware loading on Cirrus Logic DSPs

Message ID 20210913160057.103842-1-simont@opensource.cirrus.com (mailing list archive)
Headers show
Series add driver to support firmware loading on Cirrus Logic DSPs | expand

Message

Simon Trimmer Sept. 13, 2021, 4 p.m. UTC
This series of patches gradually separates the ASoC specific wm_adsp
code from that required to manage firmware in Cirrus Logic DSPs.

The series starts with renaming, progresses to splitting the
functionality before finally moving the independent functionality into
drivers/firmware so that it can be used by both the existing ASoC
wm_adsp and new non-audio parts.

Charles Keepax (3):
  ASoC: wm_adsp: Move check for control existence
  ASoC: wm_adsp: Switch to using wm_coeff_read_ctrl for compressed
    buffers
  ASoC: wm_adsp: Move sys_config_size to wm_adsp

Simon Trimmer (13):
  ASoC: wm_adsp: Remove use of snd_ctl_elem_type_t
  ASoC: wm_adsp: Cancel ongoing work when removing controls
  ASoC: wm_adsp: Rename generic DSP support
  ASoC: wm_adsp: Introduce cs_dsp logging macros
  ASoC: wm_adsp: Separate some ASoC and generic functions
  ASoC: wm_adsp: Split DSP power operations into helper functions
  ASoC: wm_adsp: Separate generic cs_dsp_coeff_ctl handling
  ASoC: wm_adsp: Move check of dsp->running to better place
  ASoC: wm_adsp: Pass firmware names as parameters when starting DSP
    core
  ASoC: wm_adsp: move firmware loading to client
  ASoC: wm_adsp: Split out struct cs_dsp from struct wm_adsp
  ASoC: wm_adsp: Separate wm_adsp specifics in cs_dsp_client_ops
  firmware: cs_dsp: add driver to support firmware loading on Cirrus
    Logic DSPs

 MAINTAINERS                                   |   11 +
 drivers/firmware/Kconfig                      |    1 +
 drivers/firmware/Makefile                     |    1 +
 drivers/firmware/cirrus/Kconfig               |    5 +
 drivers/firmware/cirrus/Makefile              |    3 +
 drivers/firmware/cirrus/cs_dsp.c              | 3109 ++++++++++++++++
 include/linux/firmware/cirrus/cs_dsp.h        |  242 ++
 .../linux/firmware/cirrus}/wmfw.h             |    8 +-
 sound/soc/codecs/Kconfig                      |    1 +
 sound/soc/codecs/cs47l15.c                    |   22 +-
 sound/soc/codecs/cs47l24.c                    |   20 +-
 sound/soc/codecs/cs47l35.c                    |   24 +-
 sound/soc/codecs/cs47l85.c                    |   32 +-
 sound/soc/codecs/cs47l90.c                    |   34 +-
 sound/soc/codecs/cs47l92.c                    |   20 +-
 sound/soc/codecs/madera.c                     |   18 +-
 sound/soc/codecs/wm2200.c                     |   30 +-
 sound/soc/codecs/wm5102.c                     |   16 +-
 sound/soc/codecs/wm5110.c                     |   24 +-
 sound/soc/codecs/wm_adsp.c                    | 3188 ++---------------
 sound/soc/codecs/wm_adsp.h                    |  105 +-
 21 files changed, 3794 insertions(+), 3120 deletions(-)
 create mode 100644 drivers/firmware/cirrus/Kconfig
 create mode 100644 drivers/firmware/cirrus/Makefile
 create mode 100644 drivers/firmware/cirrus/cs_dsp.c
 create mode 100644 include/linux/firmware/cirrus/cs_dsp.h
 rename {sound/soc/codecs => include/linux/firmware/cirrus}/wmfw.h (91%)

Comments

Mark Brown Sept. 27, 2021, 5:45 p.m. UTC | #1
On Mon, 13 Sep 2021 17:00:41 +0100, Simon Trimmer wrote:
> This series of patches gradually separates the ASoC specific wm_adsp
> code from that required to manage firmware in Cirrus Logic DSPs.
> 
> The series starts with renaming, progresses to splitting the
> functionality before finally moving the independent functionality into
> drivers/firmware so that it can be used by both the existing ASoC
> wm_adsp and new non-audio parts.
> 
> [...]

Applied to

   https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next

Thanks!

[01/16] ASoC: wm_adsp: Remove use of snd_ctl_elem_type_t
        commit: d07a6d454ffa310ee306d57f486eb64380bbdfff
[02/16] ASoC: wm_adsp: Move check for control existence
        commit: 6477960755fb2c0ca9b0497bc86abfa4ee173556
[03/16] ASoC: wm_adsp: Switch to using wm_coeff_read_ctrl for compressed buffers
        commit: 04ae08596737c4d3872dfb6e617c918d9ecf073e
[04/16] ASoC: wm_adsp: Cancel ongoing work when removing controls
        commit: df6c505c129a114da783ae82b9f0b4d2d4691c91
[05/16] ASoC: wm_adsp: Rename generic DSP support
        commit: 5beb8eeade2c03b55ae729c05bb9fa245633fe74
[06/16] ASoC: wm_adsp: Introduce cs_dsp logging macros
        commit: 6ab1d0cc8470100cc8e0b478d94ff00b44df1625
[07/16] ASoC: wm_adsp: Separate some ASoC and generic functions
        commit: 25ca837ba6f4dd8f969b41aa202a62facdd2370c
[08/16] ASoC: wm_adsp: Split DSP power operations into helper functions
        commit: 186152df4d431650154c3e3aefc7d3e1004987c8
[09/16] ASoC: wm_adsp: Move sys_config_size to wm_adsp
        commit: 6092be2d93b3b28dfeca4e5944052a1a21f51ca3
[10/16] ASoC: wm_adsp: Separate generic cs_dsp_coeff_ctl handling
        commit: 0700bc2fb94c28459f57a10d2ee2c7ef4cb70862
[11/16] ASoC: wm_adsp: Move check of dsp->running to better place
        commit: edb1d6d7f03913b2b6ca299b1f6fd8dc96d511f5
[12/16] ASoC: wm_adsp: Pass firmware names as parameters when starting DSP core
        commit: 2169f2f15185f9393b1c16eac6e7c7d4adb6279b
[13/16] ASoC: wm_adsp: move firmware loading to client
        commit: a828056fa1fc044beab3cbe32f484fec5f38fe98
[14/16] ASoC: wm_adsp: Split out struct cs_dsp from struct wm_adsp
        commit: e146820215910d889ab16d6c2484fd51a6bb8f1f
[15/16] ASoC: wm_adsp: Separate wm_adsp specifics in cs_dsp_client_ops
        commit: 2dd044641ec3672433b9fe3ec47b236621757aa8
[16/16] firmware: cs_dsp: add driver to support firmware loading on Cirrus Logic DSPs
        commit: f6bc909e7673c30abcbdb329e7d0aa2e83c103d7

All being well this means that it will be integrated into the linux-next
tree (usually sometime in the next 24 hours) and sent to Linus during
the next merge window (or sooner if it is a bug fix), however if
problems are discovered then the patch may be dropped or reverted.

You may get further e-mails resulting from automated or manual testing
and review of the tree, please engage with people reporting problems and
send followup patches addressing any issues that are reported if needed.

If any updates are required or you are submitting further changes they
should be sent as incremental updates against current git, existing
patches will not be replaced.

Please add any relevant lists and maintainers to the CCs when replying
to this mail.

Thanks,
Mark