NAK: [SRU][jammy][pull-request] alsa: enable the cirrus-logic side-codec to make the speaker output sound

Hui Wang hui.wang at canonical.com
Mon Mar 21 12:25:05 UTC 2022


Oh, sorry, it is git://xxxx and the branch name is jammy-lp1965496. Let 
me send a v2 pr.

Thanks.

On 3/21/22 20:09, Tim Gardner wrote:
> Your fetch path seems incorrect.
>
> 'git fetch 
> https://git.launchpad.net/~hui.wang/ubuntu/+source/linux/+git/jammy:jammy-lp1945496' 
> asks for a username. Nor can I find a branch or tag named 
> jammy-lp1945496.
>
> On 3/18/22 18:51, Hui Wang wrote:
>> BugLink: https://bugs.launchpad.net/bugs/1965496
>>
>> [Impact]
>> We have a couple of lenovo latops models which have cirrus-logic side
>> codec between realtek codec and speaker, it plays a role as amplifier,
>> we need to enable this side-codec, otherwise the speaker can't output
>> sound.
>>
>> [Fix]
>> Backport codec patches and some i2c and acpi detection patches from
>> mainline kernel and linux-next
>>
>> [Test]
>> boot the patched kernel, run speaker test, both left and right channel
>> could work well.
>>
>> [Where problems could occur]
>> If it could introduce regression, it will be on soc wm_adsp codec
>> drivers, since most of patch are adding new codec drivers, it will
>> not touch existing codec drivers. If a machine with wm_adsp codec
>> can't output sound or record sound, it means this SRU introduce
>> the regression on wm_adsp driver, but this possibility is very
>> low, since all patches are picked from mainline kernel.
>>
>>
>> The following changes since commit 
>> 659e1cf637d4da7cfd706b613359f92ef9c7d1f1:
>>
>>    ALSA: hda/cs8409: Add new Warlock SKUs to patch_cs8409 (2022-03-15 
>> 17:42:37 +0100)
>>
>> are available in the Git repository at:
>>
>> https://git.launchpad.net/~hui.wang/ubuntu/+source/linux/+git/jammy:jammy-lp1945496 
>>
>>
>> for you to fetch changes up to a91f858c5c672c902da61bc63c15fd3718506267:
>>
>>    UBUNTU: [Config] Add cirruslogic side codec support (2022-03-18 
>> 15:21:54 +0800)
>>
>> ----------------------------------------------------------------
>> Alexander Sergeyev (1):
>>        ALSA: hda/realtek: fix speakers and micmute on HP 855 G8
>>
>> Charles Keepax (19):
>>        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
>>        ASoC: wm_adsp: Add support for "toggle" preloaders
>>        ASoC: cs35l41: Fix use of an uninitialised variable
>>        ASoC: cs35l41: Use regmap_read_poll_timeout to wait for OTP boot
>>        ASoC: cs35l41: Combine adjacent register writes
>>        ASoC: cs35l41: Don't overwrite returned error code
>>        ASoC: cs35l41: Fixup the error messages
>>        ASoC: cs35l41: Fix a bunch of trivial code formating/style issues
>>        misc: cs35l41: Remove unused pdn variable
>>        ASoC: cs35l41: Change monitor widgets to siggens
>>        ASoC: cs35l41: Remove incorrect comment
>>        ASoC: cs35l41: Correct DSP power down
>>        ASoC: cs35l41: Correct handling of some registers in the cache
>>        ASoC: cs35l41: Update handling of test key registers
>>        ASoC: cs35l41: Add support for hibernate memory retention mode
>>        ALSA: hda: cs35l41: Avoid overwriting register patch
>>        ALSA: hda: cs35l41: Add calls to newly added test key function
>>
>> Dan Carpenter (1):
>>        ALSA: hda: cs35l41: fix double free on error in probe()
>>
>> David Rhodes (3):
>>        ASoC: cs35l41: CS35L41 Boosted Smart Amplifier
>>        ASoC: cs35l41: DSP Support
>>        ASoC: cs35l41: Add cs35l51/53 IDs
>>
>> Hui Wang (1):
>>        UBUNTU: [Config] Add cirruslogic side codec support
>>
>> Lucas Tanure (19):
>>        ASoC: cs35l41: Set the max SPI speed for the whole device
>>        ASoC: cs35l41: Fix link problem
>>        ASoC: cs35l41: Fix undefined reference to core functions
>>        ASoC: cs35l41: Convert tables to shared source code
>>        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
>>        ALSA: hda: cs35l41: Add support for CS35L41 in HDA systems
>>        ALSA: hda: cs35l41: Move cs35l41* calls to its own symbol 
>> namespace
>>        ALSA: hda: cs35l41: Add missing default cases
>>        ALSA: hda: cs35l41: Make use of the helper function 
>> dev_err_probe()
>>        ALSA: hda: cs35l41: Tidyup code
>>        ALSA: hda/realtek: Add support for Legion 7 16ACHg6 laptop
>>        platform/x86: i2c-multi-instantiate: Rename it for a generic 
>> serial driver name
>>        platform/x86: serial-multi-instantiate: Reorganize I2C functions
>>        ALSA: hda/realtek: Add support for HP Laptops
>>        ACPI / scan: Create platform device for CS35L41
>>
>> Saranya Gopal (1):
>>        Revert "platform/x86: i2c-multi-instantiate: Don't create 
>> platform device for INT3515 ACPI nodes"
>>
>> 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
>>
>> Stefan Binding (5):
>>        ALSA: hda/realtek: Add CS35L41 support for Thinkpad laptops
>>        spi: Create helper API to lookup ACPI info for spi device
>>        spi: Support selection of the index of the ACPI Spi Resource 
>> before alloc
>>        spi: Add API to count spi acpi resources
>>        platform/x86: serial-multi-instantiate: Add SPI support
>>
>> Uwe Kleine-König (2):
>>        ASoC: cs35l41: Make cs35l41_remove() return void
>>        ALSA: hda: cs35l41: Make cs35l41_hda_remove() return void
>>
>>   MAINTAINERS                                                | 18 +-
>>   debian.master/config/annotations                           | 20 +-
>>   debian.master/config/config.common.ubuntu                  | 10 +-
>>   drivers/acpi/scan.c                                        | 16 +-
>>   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 
>> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 
>>
>>   drivers/platform/x86/Kconfig                               | 12 +-
>>   drivers/platform/x86/Makefile |    2 +-
>>   drivers/platform/x86/i2c-multi-instantiate.c               | 189 
>> -------
>>   drivers/platform/x86/serial-multi-instantiate.c            | 348 
>> ++++++++++++
>>   drivers/spi/spi.c                                          | 131 ++++-
>>   include/linux/firmware/cirrus/cs_dsp.h                     | 242 
>> +++++++++
>>   {sound/soc/codecs => include/linux/firmware/cirrus}/wmfw.h |    8 +-
>>   include/linux/spi/spi.h |    7 +
>>   include/sound/cs35l41.h                                    | 780 
>> +++++++++++++++++++++++++++
>>   sound/pci/hda/Kconfig                                      | 29 +
>>   sound/pci/hda/Makefile                                     | 10 +
>>   sound/pci/hda/cs35l41_hda.c                                | 542 
>> +++++++++++++++++++
>>   sound/pci/hda/cs35l41_hda.h                                | 69 +++
>>   sound/pci/hda/cs35l41_hda_i2c.c                            | 68 +++
>>   sound/pci/hda/cs35l41_hda_spi.c                            | 65 +++
>>   sound/pci/hda/hda_component.h                              | 20 +
>>   sound/pci/hda/patch_realtek.c                              | 201 
>> ++++++-
>>   sound/soc/codecs/Kconfig                                   | 27 +
>>   sound/soc/codecs/Makefile |    8 +
>>   sound/soc/codecs/cs35l41-i2c.c                             | 102 ++++
>>   sound/soc/codecs/cs35l41-lib.c                             | 1040 
>> ++++++++++++++++++++++++++++++++++++
>>   sound/soc/codecs/cs35l41-spi.c                             | 100 ++++
>>   sound/soc/codecs/cs35l41.c                                 | 1597 
>> +++++++++++++++++++++++++++++++++++++++++++++++++++++++
>>   sound/soc/codecs/cs35l41.h                                 | 60 +++
>>   sound/soc/codecs/cs47l15.c                                 | 26 +-
>>   sound/soc/codecs/cs47l24.c                                 | 20 +-
>>   sound/soc/codecs/cs47l35.c                                 | 26 +-
>>   sound/soc/codecs/cs47l85.c                                 | 34 +-
>>   sound/soc/codecs/cs47l90.c                                 | 36 +-
>>   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                                 | 3320 
>> +++++++++++++----------------------------------------------------------------------------------------------------- 
>>
>>   sound/soc/codecs/wm_adsp.h                                 | 111 +---
>>   45 files changed, 9114 insertions(+), 3407 deletions(-)
>>   create mode 100644 drivers/firmware/cirrus/Kconfig
>>   create mode 100644 drivers/firmware/cirrus/Makefile
>>   create mode 100644 drivers/firmware/cirrus/cs_dsp.c
>>   delete mode 100644 drivers/platform/x86/i2c-multi-instantiate.c
>>   create mode 100644 drivers/platform/x86/serial-multi-instantiate.c
>>   create mode 100644 include/linux/firmware/cirrus/cs_dsp.h
>>   rename {sound/soc/codecs => include/linux/firmware/cirrus}/wmfw.h 
>> (91%)
>>   create mode 100644 include/sound/cs35l41.h
>>   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/cs35l41_hda_spi.c
>>   create mode 100644 sound/pci/hda/hda_component.h
>>   create mode 100644 sound/soc/codecs/cs35l41-i2c.c
>>   create mode 100644 sound/soc/codecs/cs35l41-lib.c
>>   create mode 100644 sound/soc/codecs/cs35l41-spi.c
>>   create mode 100644 sound/soc/codecs/cs35l41.c
>>   create mode 100644 sound/soc/codecs/cs35l41.h
>>
>>
>



More information about the kernel-team mailing list