public inbox for linux-sound@vger.kernel.org
 help / color / mirror / Atom feed
From: "Cássio Gabriel" <cassiogabrielcontato@gmail.com>
To: Takashi Iwai <tiwai@suse.com>, Jaroslav Kysela <perex@perex.cz>
Cc: linux-sound@vger.kernel.org, linux-kernel@vger.kernel.org,
	"Cássio Gabriel" <cassiogabrielcontato@gmail.com>
Subject: [PATCH 0/2] ALSA: msnd: add suspend/resume support
Date: Thu, 09 Apr 2026 02:07:44 -0300	[thread overview]
Message-ID: <20260409-msnd-pm-support-v1-0-2abef720d0e7@gmail.com> (raw)

The msnd drivers still have no system-sleep callbacks, and the shared
driver file still carries a FIXME for suspend/resume. Probe already
depends on rebuilding volatile device state by resetting the DSP,
uploading firmware, reinitializing shared memory, restoring mixer
settings, and calibrating the ADC. Without matching PM callbacks, the
driver has no defined way to recover that state after suspend.

This small series adds the missing suspend/resume support with the
minimum scope needed for the current driver.

Patch 1 prepares the driver for PM by:
- accepting SNDRV_PCM_TRIGGER_SUSPEND in the PCM trigger callbacks
- factoring the IRQ enable/disable bodies and adding a helper that can
  quiesce or rearm the shared IRQ without disturbing irq_ref
- restoring cached master-volume values when mixer state is rebuilt
  after DSP reinitialization

Patch 2 adds the actual PM callbacks by:
- saving the current capture-source selection and msnd-side MIDI input
  state
- adding shared card suspend/resume helpers
- wiring those helpers into the ISA driver and the Pinnacle PnP card
  driver with the current callback signatures

The series intentionally does not add trigger-level PCM resume support.
The driver can rebuild hardware state on system resume, but it does not
preserve enough runtime queue state to justify advertising full
SNDRV_PCM_INFO_RESUME semantics in this change.

Signed-off-by: Cássio Gabriel <cassiogabrielcontato@gmail.com>
---
Cássio Gabriel (2):
      ALSA: msnd: prepare system sleep support
      ALSA: msnd: add ISA and PnP system sleep callbacks

 sound/isa/msnd/msnd.c                | 72 ++++++++++++++++++---------
 sound/isa/msnd/msnd.h                |  3 ++
 sound/isa/msnd/msnd_pinnacle.c       | 95 +++++++++++++++++++++++++++++++++++-
 sound/isa/msnd/msnd_pinnacle_mixer.c |  4 ++
 4 files changed, 149 insertions(+), 25 deletions(-)
---
base-commit: 9f2a23bd5d30dc0968e56a2b6e5edb58aff1bc6d
change-id: 20260403-msnd-pm-support-e14d428ca426

Best regards,
--  
Cássio Gabriel <cassiogabrielcontato@gmail.com>


             reply	other threads:[~2026-04-09  5:07 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-04-09  5:07 Cássio Gabriel [this message]
2026-04-09  5:07 ` [PATCH 1/2] ALSA: msnd: prepare system sleep support Cássio Gabriel
2026-04-09  5:07 ` [PATCH 2/2] ALSA: msnd: add ISA and PnP system sleep callbacks Cássio Gabriel
2026-04-09 10:02 ` [PATCH 0/2] ALSA: msnd: add suspend/resume support 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=20260409-msnd-pm-support-v1-0-2abef720d0e7@gmail.com \
    --to=cassiogabrielcontato@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-sound@vger.kernel.org \
    --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