Hi,
This patchset is a supplement of my previous one and to complete support for Fireface UCX: [alsa-devel] [PATCH 0/9] ALSA: fireface: add support for Fireface UCX http://mailman.alsa-project.org/pipermail/alsa-devel/2019-January/144465.htm...
The mechanism to use MIDi functionality of Fireface UCX is different from the other supported devices; Fireface 800 and Fireface 400. This patchset extends abstraction layer of hardware specification and communication protocol.
Unfortunately, a bitflag to decide lower part of address to transfer asynchronous transaction for MIDI message is in option register which has the other options. This driver expects userspace applications to configure the option as expected. In detail please refer to third patch.
For testers, a remote branch is available to backport a series of patches to Linux kernel v4.17 or later: https://github.com/takaswie/snd-firewire-improve/tree/topic/ff-ucx-midi
A userspace tool to configure addressed register is available in another remote branch for hinawa-utils: https://github.com/takaswie/hinawa-utils/tree/topic/ff-ucx
As I noted in previous patchset, this work is based on my packet analysis from rent device for a short term (2 weeks). I'm happy to get your response till next weekend.
Regards
Takashi Sakamoto (6): ALSA: fireface: change prototype of handler for async transaction with MIDI messages ALSA: fireface: add model-dependent parameter for address range to receive async transaction ALSA: fireface: support tx MIDI functionality of Fireface UCX ALSA: fireface: add model-dependent parameter for address to receive async transaction for MIDI messages ALSA: fireface: add protocol-specific operation to fill transaction buffer with MIDI messages ALSA: fireface: support rx MIDI functionality for Fireface UCX
sound/firewire/fireface/ff-midi.c | 2 +- sound/firewire/fireface/ff-protocol-former.c | 29 +++- sound/firewire/fireface/ff-protocol-latter.c | 139 +++++++++++++++++++ sound/firewire/fireface/ff-transaction.c | 44 +++--- sound/firewire/fireface/ff.c | 31 +++-- sound/firewire/fireface/ff.h | 10 +- 6 files changed, 210 insertions(+), 45 deletions(-)