All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Piotr Gliźniewicz" <p.glizniewicz@gmail.com>
To: Takashi Iwai <tiwai@suse.com>, Jaroslav Kysela <perex@perex.cz>
Cc: "Torsten Schenk" <torsten.schenk@zoho.com>,
	linux-sound@vger.kernel.org,
	"Piotr Gliźniewicz" <p.glizniewicz@gmail.com>
Subject: [PATCH 0/3] ALSA: 6fire: S/PDIF output
Date: Fri, 16 Oct 2026 09:31:29 +0200	[thread overview]
Message-ID: <20261016073132.109288-1-p.glizniewicz@gmail.com> (raw)

The DMX 6Fire USB has a coaxial S/PDIF output, which the driver keeps
disabled. This series enables it as playback channels 7 and 8 of the
existing PCM device, the layout chosen in the RFC thread [1].

Patch 1 takes stream_mutex in the "Digital Thru Playback Route" put.
It fixes a race with prepare that exists in mainline, and patch 3
depends on the lock.

Patch 2 adds a playback channel map in the order of the manual of the
card, FL FR FC LFE RL RR on Line Out 1 to 6.

Patch 3 adds the output with the "IEC958 Playback Default", "IEC958
Playback Con Mask" and "IEC958 Playback Switch" controls. With 8
channels the card runs at 96 kHz at most. The Pro Audio profile of
PipeWire 1.6.9 opened the device with 8 channels, so with this series
it gets 8 channels at up to 96 kHz instead of 6 channels at up to
192 kHz. A client that asks for 6 channels still gets 176.4 and
192 kHz.

A UCM profile for alsa-ucm-conf will describe the channels: the default
variant with analog 5.1 and S/PDIF as two sinks at up to 96 kHz, and a
"HiFi Analog" variant with analog 5.1 only at up to 192 kHz, which
turns the switch off while in use. I tested a draft with
PipeWire 1.6.9 and this series; I will send it after the kernel
patches are accepted.

[1] https://lore.kernel.org/linux-sound/30dcedc7-3b56-4396-af3d-6c2701ef1cb7@perex.cz/

Piotr Gliźniewicz (3):
  ALSA: 6fire: take stream_mutex in the Digital Thru control
  ALSA: 6fire: add a playback channel map
  ALSA: 6fire: add S/PDIF output

 sound/usb/6fire/control.c |  32 +++-
 sound/usb/6fire/pcm.c     | 334 ++++++++++++++++++++++++++++++++++++--
 sound/usb/6fire/pcm.h     |   7 +-
 3 files changed, 351 insertions(+), 22 deletions(-)

-- 
2.56.0


             reply	other threads:[~2026-10-16  7:31 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-10-16  7:31 Piotr Gliźniewicz [this message]
2026-10-16  7:31 ` [PATCH 1/3] ALSA: 6fire: take stream_mutex in the Digital Thru control Piotr Gliźniewicz
2026-10-16  7:31 ` [PATCH 2/3] ALSA: 6fire: add a playback channel map Piotr Gliźniewicz
2026-10-16  7:31 ` [PATCH 3/3] ALSA: 6fire: add S/PDIF output Piotr Gliźniewicz
2026-10-16 16:46 ` [PATCH 0/3] ALSA: 6fire: " 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=20261016073132.109288-1-p.glizniewicz@gmail.com \
    --to=p.glizniewicz@gmail.com \
    --cc=linux-sound@vger.kernel.org \
    --cc=perex@perex.cz \
    --cc=tiwai@suse.com \
    --cc=torsten.schenk@zoho.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 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.