public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH v1 0/8] System Suspend fixes and improvements for CS35L41 HDA
@ 2023-10-26 15:05 Stefan Binding
  2023-10-26 15:05 ` [PATCH v1 1/8] ALSA: hda: cs35l41: Use reset label to get GPIO for HP Zbook Fury 17 G9 Stefan Binding
                   ` (8 more replies)
  0 siblings, 9 replies; 11+ messages in thread
From: Stefan Binding @ 2023-10-26 15:05 UTC (permalink / raw)
  To: Jaroslav Kysela, Takashi Iwai, Mark Brown
  Cc: alsa-devel, linux-kernel, linux-sound, patches, Stefan Binding

There is a report of a single laptop which uses CS35L41 HDA having an
issue with System Suspend. This particular laptop uses S3 (Deep) Sleep.
The reported issue states that when the laptop resumes from a system
suspend, audio no longer works.

The root cause of this issue is due to the CS35L41 being returned to us
in an unexpected state after a suspend/resume cycle.
When the driver resumes, it expects the parts to have been reset, which
leads to issues with audio and firmware loading.

To prevent this issue, and the possibility of similar issues, patches
2-5 force the driver to reset during probe, system suspend, and system
resume, which ensures that the part is always in the correct state.
Patches 6-8 are improvements in the suspend and firmware loading code,
which makes it easier to detect issues in the future, as well as
simplifiying the suspend code.

Patch 1 is a fix for an incorrect configuration for the HP Zbook Fury
17, which is the laptop which had the original issue.

Stefan Binding (8):
  ALSA: hda: cs35l41: Use reset label to get GPIO for HP Zbook Fury 17
    G9
  ALSA: hda: cs35l41: Assert reset before system suspend
  ALSA: hda: cs35l41: Assert Reset prior to de-asserting in probe and
    system resume
  ALSA: hda: cs35l41: Run boot process during resume callbacks
  ALSA: hda: cs35l41: Force a software reset after hardware reset
  ALSA: hda: cs35l41: Do not unload firmware before reset in system
    suspend
  ALSA: hda: cs35l41: Check CSPL state after loading firmware
  ASoC: cs35l41: Detect CSPL errors when sending CSPL commands

 include/sound/cs35l41.h              |   3 +
 sound/pci/hda/cs35l41_hda.c          | 170 +++++++++++++++++----------
 sound/pci/hda/cs35l41_hda_property.c |  11 +-
 sound/soc/codecs/cs35l41-lib.c       |   6 +
 4 files changed, 124 insertions(+), 66 deletions(-)

-- 
2.34.1


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

end of thread, other threads:[~2023-10-26 16:03 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-10-26 15:05 [PATCH v1 0/8] System Suspend fixes and improvements for CS35L41 HDA Stefan Binding
2023-10-26 15:05 ` [PATCH v1 1/8] ALSA: hda: cs35l41: Use reset label to get GPIO for HP Zbook Fury 17 G9 Stefan Binding
2023-10-26 15:05 ` [PATCH v1 2/8] ALSA: hda: cs35l41: Assert reset before system suspend Stefan Binding
2023-10-26 15:05 ` [PATCH v1 3/8] ALSA: hda: cs35l41: Assert Reset prior to de-asserting in probe and system resume Stefan Binding
2023-10-26 15:05 ` [PATCH v1 4/8] ALSA: hda: cs35l41: Run boot process during resume callbacks Stefan Binding
2023-10-26 15:05 ` [PATCH v1 5/8] ALSA: hda: cs35l41: Force a software reset after hardware reset Stefan Binding
2023-10-26 15:05 ` [PATCH v1 6/8] ALSA: hda: cs35l41: Do not unload firmware before reset in system suspend Stefan Binding
2023-10-26 15:05 ` [PATCH v1 7/8] ALSA: hda: cs35l41: Check CSPL state after loading firmware Stefan Binding
2023-10-26 15:05 ` [PATCH v1 8/8] ASoC: cs35l41: Detect CSPL errors when sending CSPL commands Stefan Binding
2023-10-26 15:09   ` Mark Brown
2023-10-26 16:02 ` [PATCH v1 0/8] System Suspend fixes and improvements for CS35L41 HDA Takashi Iwai

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox