All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v3 00/11] Add support for Legion 7 16ACHg6 laptop
@ 2021-11-23 16:31 ` Lucas Tanure
  0 siblings, 0 replies; 55+ messages in thread
From: Lucas Tanure @ 2021-11-23 16:31 UTC (permalink / raw)
  To: Rafael J . Wysocki, Len Brown, Hans de Goede, Mark Gross,
	Liam Girdwood, Jaroslav Kysela, Mark Brown, Takashi Iwai,
	Kailang Yang, Shuming Fan, Pierre-Louis Bossart, David Rhodes,
	Vitaly Rodionov
  Cc: Jeremy Szu, Hui Wang, Werner Sembach, Chris Chiu,
	Cameron Berkenpas, Sami Loone, Elia Devito, Srinivas Kandagatla,
	Jack Yu, Arnd Bergmann, Lars-Peter Clausen, Alexandre Belloni,
	alsa-devel, linux-acpi, patches, platform-driver-x86,
	linux-kernel, Lucas Tanure

Add support for laptops that have CS35L41 connected to an
HDA codec by I2S and direct I2C/SPI connection to the CPU

Hardware:
 - The 16ACHg6 laptop has two CS35L41 amplifiers, connected
to Realtek ALC287 by an I2S bus and by and direct I2C to the CPU.
 - The ALC287 codec is connected to the CPU by an HDA bus.
 - The CS35L41 has a DSP which will require firmware to be loaded.

Architecture:
 - Creation of a library of shared functions for CS35L41 ASoC and HDA
 - HDA codec driver (RealTek) and CS35L41 HDA driver are combined
 by using component binding, where it uses device names to find the
 components and bind to the master
 - The HDA CS35L41 driver applies pre-defined registers sequences
 for each action in playback for HDA Sound card

Changes from V2:
 - Not an RFC
 - Create a new HDA driver for CS35L41 instead of using the ASoC one
 - Use component binding and device names to find the CS35L41 driver
 - Create a shared library for ASoC and HDA CS35L41 drivers

Lucas Tanure (11):
  ASoC: cs35l41: Set the max SPI speed for the whole device
  ASoC: cs35l41: Convert tables to shared source code
  ASoC: cs35l41: Move regmap config struct to shared code
  ASoC: cs35l41: Create function for init array of Supplies
  ASoC: cs35l41: Move cs35l41_otp_unpack to shared code
  ASoC: cs35l41: Move power initializations to reg_sequence
  ASoC: cs35l41: Create shared function for errata patches
  ASoC: cs35l41: Create shared function for setting channels
  ASoC: cs35l41: Create shared function for boost configuration
  hda: cs35l41: Add support for CS35L41 in HDA systems
  ACPI / scan: Create platform device for CLSA0100 ACPI nodes

 MAINTAINERS                                   |   2 +
 drivers/acpi/scan.c                           |   1 +
 drivers/platform/x86/i2c-multi-instantiate.c  |   7 +
 include/sound/cs35l41.h                       | 741 ++++++++++++++++++
 sound/pci/hda/Kconfig                         |  10 +
 sound/pci/hda/Makefile                        |  28 +-
 sound/pci/hda/cs35l41_hda.c                   | 522 ++++++++++++
 sound/pci/hda/cs35l41_hda.h                   |  69 ++
 sound/pci/hda/cs35l41_hda_i2c.c               |  61 ++
 sound/pci/hda/hda_component.h                 |  20 +
 sound/pci/hda/patch_realtek.c                 | 103 +++
 sound/soc/codecs/Makefile                     |   4 +-
 sound/soc/codecs/cs35l41-i2c.c                |  16 -
 .../{cs35l41-tables.c => cs35l41-lib.c}       | 400 +++++++++-
 sound/soc/codecs/cs35l41-spi.c                |  49 +-
 sound/soc/codecs/cs35l41.c                    | 390 +--------
 sound/soc/codecs/cs35l41.h                    | 739 -----------------
 17 files changed, 1964 insertions(+), 1198 deletions(-)
 create mode 100644 sound/pci/hda/cs35l41_hda.c
 create mode 100644 sound/pci/hda/cs35l41_hda.h
 create mode 100644 sound/pci/hda/cs35l41_hda_i2c.c
 create mode 100644 sound/pci/hda/hda_component.h
 rename sound/soc/codecs/{cs35l41-tables.c => cs35l41-lib.c} (68%)

-- 
2.34.0


^ permalink raw reply	[flat|nested] 55+ messages in thread

end of thread, other threads:[~2021-11-24 17:36 UTC | newest]

Thread overview: 55+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-11-23 16:31 [PATCH v3 00/11] Add support for Legion 7 16ACHg6 laptop Lucas Tanure
2021-11-23 16:31 ` Lucas Tanure
2021-11-23 16:31 ` [PATCH 01/11] ASoC: cs35l41: Set the max SPI speed for the whole device Lucas Tanure
2021-11-23 16:31   ` Lucas Tanure
2021-11-23 18:02   ` Charles Keepax
2021-11-23 18:02     ` Charles Keepax
2021-11-23 16:31 ` [PATCH 02/11] ASoC: cs35l41: Convert tables to shared source code Lucas Tanure
2021-11-23 16:31   ` Lucas Tanure
2021-11-23 17:53   ` Mark Brown
2021-11-23 17:53     ` Mark Brown
2021-11-23 18:05     ` Charles Keepax
2021-11-23 18:05       ` Charles Keepax
2021-11-24  1:34   ` kernel test robot
2021-11-24  1:34     ` kernel test robot
2021-11-23 16:31 ` [PATCH 03/11] ASoC: cs35l41: Move regmap config struct to shared code Lucas Tanure
2021-11-23 16:31   ` Lucas Tanure
2021-11-23 17:20   ` Mark Brown
2021-11-23 17:20     ` Mark Brown
2021-11-23 16:31 ` [PATCH 04/11] ASoC: cs35l41: Create function for init array of Supplies Lucas Tanure
2021-11-23 16:31   ` Lucas Tanure
2021-11-23 17:58   ` Mark Brown
2021-11-23 17:58     ` Mark Brown
2021-11-24 13:31     ` Mark Brown
2021-11-23 16:31 ` [PATCH 05/11] ASoC: cs35l41: Move cs35l41_otp_unpack to shared code Lucas Tanure
2021-11-23 16:31   ` Lucas Tanure
2021-11-23 16:31 ` [PATCH 06/11] ASoC: cs35l41: Move power initializations to reg_sequence Lucas Tanure
2021-11-23 16:31   ` Lucas Tanure
2021-11-23 16:31 ` [PATCH 07/11] ASoC: cs35l41: Create shared function for errata patches Lucas Tanure
2021-11-23 16:31   ` Lucas Tanure
2021-11-23 16:31 ` [PATCH 08/11] ASoC: cs35l41: Create shared function for setting channels Lucas Tanure
2021-11-23 16:31   ` Lucas Tanure
2021-11-23 16:31 ` [PATCH 09/11] ASoC: cs35l41: Create shared function for boost configuration Lucas Tanure
2021-11-23 16:31   ` Lucas Tanure
2021-11-23 16:31 ` [PATCH 10/11] hda: cs35l41: Add support for CS35L41 in HDA systems Lucas Tanure
2021-11-23 16:31   ` Lucas Tanure
2021-11-23 16:52   ` Takashi Iwai
2021-11-23 16:52     ` Takashi Iwai
2021-11-23 16:59   ` Pierre-Louis Bossart
2021-11-23 16:59     ` Pierre-Louis Bossart
2021-11-23 17:06     ` tanureal
2021-11-23 17:16       ` Pierre-Louis Bossart
2021-11-23 17:15   ` Mark Brown
2021-11-23 17:15     ` Mark Brown
2021-11-24  3:18   ` kernel test robot
2021-11-23 16:31 ` [PATCH 11/11] ACPI / scan: Create platform device for CLSA0100 ACPI nodes Lucas Tanure
2021-11-23 16:31   ` Lucas Tanure
2021-11-23 17:05   ` Hans de Goede
2021-11-23 17:05     ` Hans de Goede
2021-11-23 17:11     ` Lucas tanure
2021-11-23 17:11       ` Lucas tanure
2021-11-23 18:35       ` Hans de Goede
2021-11-23 18:35         ` Hans de Goede
2021-11-23 23:01         ` Andy Shevchenko
2021-11-23 23:01           ` Andy Shevchenko
2021-11-24 17:36 ` (subset) [PATCH v3 00/11] Add support for Legion 7 16ACHg6 laptop Mark Brown

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.