All of lore.kernel.org
 help / color / mirror / Atom feed
From: Takashi Sakamoto <o-takashi@sakamocchi.jp>
To: clemens@ladisch.de, tiwai@suse.de
Cc: alsa-devel@alsa-project.org, ffado-devel@lists.sourceforge.net
Subject: [PATCH 0/8] ALSA: fireface: add support for Fireface 800 with MIDI functionality only
Date: Tue, 11 Dec 2018 19:17:27 +0900	[thread overview]
Message-ID: <20181211101735.13735-1-o-takashi@sakamocchi.jp> (raw)

Hi,

In 2004, RME GmbH shipped Fireface 800 as a flagship model of its
Fireface series. This model consists of some chips:
 - TI TSB81BA3D for physical layer on cable environment of EEE 1394 bus
 - TI TSB82AA2 for link layer for 1394 OHCI bus bridge to PCI bus
 - Xilinx Spartan-3 FPGA XC3S400
 - Xilinx High-Performance CPLD XC9572XL

A remarkable point of this model is that its physical/link layer
support S800 (800Mbps) mode of IEEE 1394b. Within devices of audio
and music unit on IEEE 1394 bus, this is an unique model to support it,
as long as I know.

This commit adds support for the model with its MIDI functionality only.
The functionality is quite similar to the one of Fireface 400. In patch
01-06, some codes specific to Fireface 400 are arranged to be shared by
both models.

On the other hand, there're some differences. The largest difference is
that the model has no register to switch enabling/disabling tx
asynchronous transactions for MIDI messages. Therefore the functionality
work well without any assist by userspace.

For this work, I use v2.77 firmware and v3.1.24 driver shipped by RME
GmbH. If finding some differences between older firmware, please report
it with enough information for debug. To help users for test, I prepare
a remote branch including these patches. This can be backport to Linux
v4.17 or later.
https://github.com/takaswie/snd-firewire-improve/tree/topic/ff800-midi

Takashi Sakamoto (8):
  ALSA: fireface: share some registers for status of clock
    synchronization
  ALSA: fireface: share status and configuration dump
  ALSA: fireface: share helper function to get current sampling rate and
    clock source
  ALSA: fireface: add support for second optical interface for ADAT
    stream
  ALSA: fireface: share register for async transaction of MIDI messages
  ALSA: fireface: add driver data for register for MIDI high address
  ALSA: fireface: localize a handler for MIDI messages on tx transaction
  ALSA: fireface: add support for Fireface 800 with MIDI functionality
    only

 sound/firewire/Kconfig                      |   1 +
 sound/firewire/fireface/Makefile            |   3 +-
 sound/firewire/fireface/ff-pcm.c            |   2 +-
 sound/firewire/fireface/ff-proc.c           | 193 +++++++++++++-
 sound/firewire/fireface/ff-protocol-ff400.c | 282 ++------------------
 sound/firewire/fireface/ff-protocol-ff800.c |  27 ++
 sound/firewire/fireface/ff-stream.c         |   2 +-
 sound/firewire/fireface/ff-transaction.c    | 157 ++++++-----
 sound/firewire/fireface/ff.c                |  54 +++-
 sound/firewire/fireface/ff.h                |  31 ++-
 10 files changed, 406 insertions(+), 346 deletions(-)
 create mode 100644 sound/firewire/fireface/ff-protocol-ff800.c

-- 
2.19.1

             reply	other threads:[~2018-12-11 10:17 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-12-11 10:17 Takashi Sakamoto [this message]
2018-12-11 10:17 ` [PATCH 1/8] ALSA: fireface: share some registers for status of clock synchronization Takashi Sakamoto
2018-12-11 10:17 ` [PATCH 2/8] ALSA: fireface: share status and configuration dump Takashi Sakamoto
2018-12-11 10:17 ` [PATCH 3/8] ALSA: fireface: share helper function to get current sampling rate and clock source Takashi Sakamoto
2018-12-11 10:17 ` [PATCH 4/8] ALSA: fireface: add support for second optical interface for ADAT stream Takashi Sakamoto
2018-12-11 10:17 ` [PATCH 5/8] ALSA: fireface: share register for async transaction of MIDI messages Takashi Sakamoto
2018-12-11 10:17 ` [PATCH 6/8] ALSA: fireface: add driver data for register for MIDI high address Takashi Sakamoto
2018-12-11 10:17 ` [PATCH 7/8] ALSA: fireface: localize a handler for MIDI messages on tx transaction Takashi Sakamoto
2018-12-11 10:17 ` [PATCH 8/8] ALSA: fireface: add support for Fireface 800 with MIDI functionality only Takashi Sakamoto
2018-12-11 13:59 ` [PATCH 0/8] " 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=20181211101735.13735-1-o-takashi@sakamocchi.jp \
    --to=o-takashi@sakamocchi.jp \
    --cc=alsa-devel@alsa-project.org \
    --cc=clemens@ladisch.de \
    --cc=ffado-devel@lists.sourceforge.net \
    --cc=tiwai@suse.de \
    /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.