From: Richard Fitzgerald <rf@opensource.cirrus.com>
To: <broonie@kernel.org>, <tiwai@suse.com>
Cc: <perex@perex.cz>, <alsa-devel@alsa-project.org>,
<linux-kernel@vger.kernel.org>, <patches@opensource.cirrus.com>,
Richard Fitzgerald <rf@opensource.cirrus.com>
Subject: [PATCH v5 00/11] ALSA: hda: Adding support for CS35L56 on HDA systems
Date: Fri, 21 Jul 2023 14:21:09 +0100 [thread overview]
Message-ID: <20230721132120.5523-1-rf@opensource.cirrus.com> (raw)
This set of patches adds support for using the CS35L56 boosted smart
amplifier on HDA systems. In these systems the CS35L56 audio is
routed through a HDA-to-I2S bridge codec.
This doesn't include the changes to the Realtek driver to actually hook
up the CS35L56 driver, because we don't yet have the QUIRK IDs to
associate it with. But we want to publish the driver now so that it is
available for bringing up hardware with the CS35L56.
The first 9 patches are moving code out of the ASoC driver and into the
shared library so that it can be shared with the HDA driver.
Patch #10 fixes missing #includes in the HDA headers so that the CS35L56
driver doesn't have to #include headers that it doesn't use.
CHANGES SINCE V5
The series has been rebased onto commit df4167d658d4
("ASoC: cs35l56: Patch soft registers to defaults"), which removes
cs35l56_reread_firmware_registers() and adds cs35l56_set_patch().
Changes are trivial so I have carried forward Mark's and Takashi's acks.
Patch 01:
- Also changes cs35l56_set_patch() argument to new struct cs35l56_base.
Patch 11:
- Remove call to cs35l56_reread_firmware_registers()
- Add call to cs35l56_set_patch() in cs35l56_hda_common_probe()
- Do not add mute_hook to struct hda_component. This was for use with
CS8409 as an HDA bridge, but production systems will use Realtek,
which has its own mute control.
- Use strscpy() instead of strcpy() in cs35l56_hda_mixer_info()
- Fix missing word in Kconfig option title
Richard Fitzgerald (4):
ASoC: cs35l56: Move runtime suspend/resume to shared library
ASoC: cs35l56: Move cs_dsp init into shared library
ASoC: cs35l56: Move part of cs35l56_init() to shared library
ALSA: hda: Fix missing header dependencies
Simon Trimmer (7):
ASoC: cs35l56: Move shared data into a common data structure
ASoC: cs35l56: Make cs35l56_system_reset() code more generic
ASoC: cs35l56: Convert utility functions to use common data structure
ASoC: cs35l56: Move utility functions to shared file
ASoC: cs35l56: Make common function for control port wait
ASoC: cs35l56: Make a common function to shutdown the DSP
ALSA: hda/cs35l56: Add driver for Cirrus Logic CS35L56 amplifier
include/sound/cs35l56.h | 29 +-
sound/pci/hda/Kconfig | 31 +
sound/pci/hda/Makefile | 6 +
sound/pci/hda/cs35l56_hda.c | 995 ++++++++++++++++++++++++++++++
sound/pci/hda/cs35l56_hda.h | 48 ++
sound/pci/hda/cs35l56_hda_i2c.c | 69 +++
sound/pci/hda/cs35l56_hda_spi.c | 68 ++
sound/pci/hda/hda_auto_parser.h | 2 +
sound/pci/hda/hda_generic.h | 3 +
sound/soc/codecs/cs35l56-i2c.c | 14 +-
sound/soc/codecs/cs35l56-sdw.c | 72 +--
sound/soc/codecs/cs35l56-shared.c | 458 +++++++++++++-
sound/soc/codecs/cs35l56-spi.c | 10 +-
sound/soc/codecs/cs35l56.c | 648 ++++---------------
sound/soc/codecs/cs35l56.h | 15 +-
15 files changed, 1877 insertions(+), 591 deletions(-)
create mode 100644 sound/pci/hda/cs35l56_hda.c
create mode 100644 sound/pci/hda/cs35l56_hda.h
create mode 100644 sound/pci/hda/cs35l56_hda_i2c.c
create mode 100644 sound/pci/hda/cs35l56_hda_spi.c
--
2.30.2
next reply other threads:[~2023-07-21 13:22 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-07-21 13:21 Richard Fitzgerald [this message]
2023-07-21 13:21 ` [PATCH v5 01/11] ASoC: cs35l56: Move shared data into a common data structure Richard Fitzgerald
2023-07-21 13:21 ` [PATCH v5 02/11] ASoC: cs35l56: Make cs35l56_system_reset() code more generic Richard Fitzgerald
2023-07-21 13:21 ` [PATCH v5 03/11] ASoC: cs35l56: Convert utility functions to use common data structure Richard Fitzgerald
2023-07-21 13:21 ` [PATCH v5 04/11] ASoC: cs35l56: Move utility functions to shared file Richard Fitzgerald
2023-07-21 13:21 ` [PATCH v5 05/11] ASoC: cs35l56: Move runtime suspend/resume to shared library Richard Fitzgerald
2023-07-21 13:21 ` [PATCH v5 06/11] ASoC: cs35l56: Move cs_dsp init into " Richard Fitzgerald
2023-07-21 13:21 ` [PATCH v5 07/11] ASoC: cs35l56: Move part of cs35l56_init() to " Richard Fitzgerald
2023-07-21 13:21 ` [PATCH v5 08/11] ASoC: cs35l56: Make common function for control port wait Richard Fitzgerald
2023-07-21 13:21 ` [PATCH v5 09/11] ASoC: cs35l56: Make a common function to shutdown the DSP Richard Fitzgerald
2023-07-21 13:21 ` [PATCH v5 10/11] ALSA: hda: Fix missing header dependencies Richard Fitzgerald
2023-07-21 13:21 ` [PATCH v5 11/11] ALSA: hda/cs35l56: Add driver for Cirrus Logic CS35L56 amplifier Richard Fitzgerald
2023-07-21 14:50 ` [PATCH v5 00/11] ALSA: hda: Adding support for CS35L56 on HDA systems Takashi Iwai
2023-07-21 14:52 ` Mark Brown
2023-07-21 15:04 ` Takashi Iwai
2023-07-21 15:47 ` Takashi Iwai
2023-07-24 18:28 ` Mark Brown
2023-07-25 9:51 ` Takashi Iwai
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230721132120.5523-1-rf@opensource.cirrus.com \
--to=rf@opensource.cirrus.com \
--cc=alsa-devel@alsa-project.org \
--cc=broonie@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=patches@opensource.cirrus.com \
--cc=perex@perex.cz \
--cc=tiwai@suse.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox