All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 00/11] ALSA: firewire-motu: add ioctl commands to retrieve information in messages delivered by isoc packet
@ 2021-10-15  8:08 Takashi Sakamoto
  2021-10-15  8:08 ` [PATCH 01/11] ALSA: firewire-motu: add message parser to gather meter information in register DSP model Takashi Sakamoto
                   ` (11 more replies)
  0 siblings, 12 replies; 20+ messages in thread
From: Takashi Sakamoto @ 2021-10-15  8:08 UTC (permalink / raw)
  To: tiwai; +Cc: ffado-devel, alsa-devel, clemens

Hi,

The purpose of this patchset is to add message parser to ALSA
firewire-motu driver so that userspace applications can read information
in message delivered by isochronous packet as well as PCM frames.
The message includes information about hardware meter and user action
over hardware component such as knob, and MIDI message bytes.

Models in MOTU FireWire series can be categorized to 4 groups in regard
of message mechanism:

Group 1. 828 and 896
 * quadlet message to registered destination address
Group 2. 828mk2, 896hd, Traveler, 8 pre, Ultralite, 4 pre, and Audio Express
 * quadlet message to registered destination address
 * message delivered by isochronous packet
Group 3. 828mk3, 896mk3, Ultralite mk3, Traveler mk3, and Track 16
 * quadlet message to registered destination address
 * message delivered by isochronous packet
 * block message to registered destination address, including command
Group 4. V3HD/V4HD
 * quadlet message to registered destination address
 * block message to registered destination address

The patchset is for message delivered by isochronous packet in group 2
and 3. In Group 2, the message includes information of hardware meter,
information of user action over hardware component. The model in Group
2 is called as 'register DSP' in the patchset since parameters of DSP
can be configured by asynchronous transaction for register access. In
Group 3, the message includes information of hardware meter only. The
model in Group 3 is called as 'command DSP' since software and device
communicate with commands transferred by asynchronous transaction in
regard of DSP parameters. Two types of message parser is going to be
added so that the driver caches images for the information. The cache
is available for userspace application by ioctl commands newly introduced.

I note that no control element is added for the hardware meters and user
actions. It's expected for userspace application to retrieve and parse the
information of image then operate for user-defined control element set.

Takashi Sakamoto (11):
  ALSA: firewire-motu: add message parser to gather meter information in
    register DSP model
  ALSA: firewire-motu: add message parser for meter information in
    command DSP model
  ALSA: firewire-motu: add ioctl command to read cached hardware meter
  ALSA: firewire-motu: parse messages for mixer source parameters in
    register-DSP model
  ALSA: firewire-motu: parse messages for mixer output parameters in
    register DSP model
  ALSA: firewire-motu: parse messages for output parameters in register
    DSP model
  ALSA: firewire-motu: parse messages for line input parameters in
    register DSP model
  ALSA: firewire-motu: parse messages for input parameters in register
    DSP model
  ALSA: firewire-motu: add ioctl command to read cached DSP parameters
  ALSA: firewire-motu: queue event for parameter change in register DSP
    model
  ALSA: firewire-motu: notify event for parameter change in register DSP
    model

 include/uapi/sound/firewire.h                 | 141 ++++++
 sound/firewire/motu/Makefile                  |   3 +-
 sound/firewire/motu/amdtp-motu.c              |   9 +
 .../motu/motu-command-dsp-message-parser.c    | 178 ++++++++
 sound/firewire/motu/motu-hwdep.c              | 113 ++++-
 sound/firewire/motu/motu-protocol-v2.c        |  14 +-
 sound/firewire/motu/motu-protocol-v3.c        |  14 +-
 .../motu/motu-register-dsp-message-parser.c   | 416 ++++++++++++++++++
 sound/firewire/motu/motu-stream.c             |  10 +
 sound/firewire/motu/motu.c                    |  10 +
 sound/firewire/motu/motu.h                    |  23 +
 11 files changed, 911 insertions(+), 20 deletions(-)
 create mode 100644 sound/firewire/motu/motu-command-dsp-message-parser.c
 create mode 100644 sound/firewire/motu/motu-register-dsp-message-parser.c

-- 
2.30.2


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

end of thread, other threads:[~2021-10-20  7:15 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-10-15  8:08 [PATCH 00/11] ALSA: firewire-motu: add ioctl commands to retrieve information in messages delivered by isoc packet Takashi Sakamoto
2021-10-15  8:08 ` [PATCH 01/11] ALSA: firewire-motu: add message parser to gather meter information in register DSP model Takashi Sakamoto
2021-10-15  8:08 ` [PATCH 02/11] ALSA: firewire-motu: add message parser for meter information in command " Takashi Sakamoto
2021-10-15  8:08 ` [PATCH 03/11] ALSA: firewire-motu: add ioctl command to read cached hardware meter Takashi Sakamoto
2021-10-15  8:08 ` [PATCH 04/11] ALSA: firewire-motu: parse messages for mixer source parameters in register-DSP model Takashi Sakamoto
2021-10-15  8:08 ` [PATCH 05/11] ALSA: firewire-motu: parse messages for mixer output parameters in register DSP model Takashi Sakamoto
2021-10-15  8:08 ` [PATCH 06/11] ALSA: firewire-motu: parse messages for " Takashi Sakamoto
2021-10-15  8:08 ` [PATCH 07/11] ALSA: firewire-motu: parse messages for line input " Takashi Sakamoto
2021-10-15  8:08 ` [PATCH 08/11] ALSA: firewire-motu: parse messages for " Takashi Sakamoto
2021-10-15  8:08 ` [PATCH 09/11] ALSA: firewire-motu: add ioctl command to read cached " Takashi Sakamoto
2021-10-15  8:08 ` [PATCH 10/11] ALSA: firewire-motu: queue event for parameter change " Takashi Sakamoto
2021-10-15  8:08 ` [PATCH 11/11] ALSA: firewire-motu: notify " Takashi Sakamoto
2021-10-15 15:54 ` [PATCH 00/11] ALSA: firewire-motu: add ioctl commands to retrieve information in messages delivered by isoc packet Takashi Iwai
2021-10-17  1:22   ` Takashi Sakamoto
2021-10-17  7:02     ` Takashi Iwai
2021-10-17  9:25       ` Takashi Sakamoto
2021-10-18  8:05         ` Takashi Iwai
2021-10-18 12:46           ` Takashi Sakamoto
2021-10-18 12:57             ` Takashi Iwai
2021-10-20  7:14               ` Takashi Sakamoto

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.