OSDN Git Service

ALSA: hda/cs35l56: Add driver for Cirrus Logic CS35L56 amplifier
authorSimon Trimmer <simont@opensource.cirrus.com>
Fri, 21 Jul 2023 13:21:20 +0000 (14:21 +0100)
committerMark Brown <broonie@kernel.org>
Sun, 23 Jul 2023 22:40:23 +0000 (23:40 +0100)
commit73cfbfa9caea8eda54b4c6e49a9555533660aa1e
tree17a784c20015dfbce7794ee1161f414208dca9c9
parent64e05321506261b737abdbfc7a82144f30d0a925
ALSA: hda/cs35l56: Add driver for Cirrus Logic CS35L56 amplifier

Add a driver for the Cirrus Logic CS35L56 amplifier. This uses the same
component binding API as the CS35L41 driver. This is not a standalone
HDA device; it provides control of the CS35L56 for systems that use a
combination of an HDA codec and CS35L56 amplifiers with audio routed
through the HDA codec.

The CS35L56 combines a high-performance mono audio amplifier, Class-H
tracking inductive boost converter, Halo Core(TM) DSP and a DC-DC boost
converter supporting Class-H tracking.

Control interfaces are I2C or SPI through the standard Linux I2C or SPI
bus framework.

Most chip functionality is controlled by on-board ROM firmware that is
always running. Firmware patches can be applied by the driver in the form
of a .wmfw file (firmware patch) and/or a .bin file (system tuning).

Signed-off-by: Simon Trimmer <simont@opensource.cirrus.com>
Signed-off-by: Richard Fitzgerald <rf@opensource.cirrus.com>
Reviewed-by: Takashi Iwai <tiwai@suse.de>
Link: https://lore.kernel.org/r/20230721132120.5523-12-rf@opensource.cirrus.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/pci/hda/Kconfig
sound/pci/hda/Makefile
sound/pci/hda/cs35l56_hda.c [new file with mode: 0644]
sound/pci/hda/cs35l56_hda.h [new file with mode: 0644]
sound/pci/hda/cs35l56_hda_i2c.c [new file with mode: 0644]
sound/pci/hda/cs35l56_hda_spi.c [new file with mode: 0644]