[alsa-devel] [PATCH 00/18] ALSA: firewire-motu: new driver for MOTU FireWire series
Takashi Sakamoto
o-takashi at sakamocchi.jp
Tue Mar 28 15:16:42 CEST 2017
Hi,
On Mar 28 2017 19:40, Takashi Iwai wrote:
> On Wed, 22 Mar 2017 13:30:10 +0100,
> Takashi Sakamoto wrote:
>>
>> Hi,
>>
>> This patchset updates my previous RFCv2, and go for ALSA upstream.
>> http://mailman.alsa-project.org/pipermail/alsa-devel/2017-January/117211.html
>>
>> This patchset newly adds a driver into ALSA firewire stack, to support for
>> some models in MOTU FireWire series:
>> - 828mk2
>> - 828mk3 (FireWire only)
>> - 828mk3 (Hybrid)
>>
>> The driver supports playbacking/capturing PCM frames and MIDI messages for any
>> sampling transfer frequencies, with current ALSA IEC 61883-1/6 packet streaming
>> engine.
>>
>> Unfortunately, units on MOTU FireWire series have many quirks against
>> IEC 61883-1/6. This brings much commits and descriptions on this patchset.
>> Sorry for reviewers but I'm glad to get your assist for this patchset.
>>
>> As I note in 8th commit, at sampling transfer frequency based on 44.1kHz, the
>> driver handles the units with choppy noises every few seconds. This is an issue
>> which is not resolved yet.
>>
>> Changes from RFCv2:
>> - drop trial support for 828. If you have interests in development, please
>> refer to one commit of my previous RFC. It describes v1 protocol.
>> - http://mailman.alsa-project.org/pipermail/alsa-devel/2017-January/117226.html
>> - improve commit messages.
>>
>> Takashi Sakamoto (18):
>> ALSA: firewire-motu: add skeleton for Mark of the unicorn (MOTU)
>> FireWire series
>> ALSA: firewire-motu: postpone sound card registration
>> ALSA: firewire-motu: add a structure for model-dependent parameters.
>> ALSA: firewire-motu: add an abstraction layer for three types of
>> protocols
>> ALSA: firewire-lib: record cycle count for the first packet
>> ALSA: firewire-lib: add support for source packet header field in CIP
>> header
>> ALSA: firewire-lib: enable CIP_DBC_IS_END_EVENT for both directions of
>> stream
>> ALSA: firewire-motu: add MOTU specific protocol layer
>> ALSA: firewire-motu: handle transactions specific for MOTU FireWire
>> models
>> ALSA: firewire-motu: add stream management functionality
>> ALSA: firewire-motu: add proc node to show current statuc of clock and
>> packet formats
>> ALSA: firewire-motu: add PCM functionality
>> ALSA: firewire-motu: add MIDI functionality
>> ALSA: firewire-motu: add hwdep interface
>> ALSA: firewire-motu: enable to read transaction cache via hwdep
>> interface
>> ALSA: firewire-motu: add support for MOTU 828mk2 as a model with
>> protocol version 2
>> ALSA: firewire-lib: add a quirk of packet without valid EOH in CIP
>> format
>> ALSA: firewire-motu: add support for MOTU 828mk3 (FireWire/Hybrid) as
>> a model with protocol version 3
>
> Applied all patches now to for-next branch.
Thanks for your reviewing and applying them. I have ease from the work
which takes almost two years.
For users and testers, I push the commits into my remote repository to
backport them to kernel since v4.4 till v4.11. Please refer to README in
topmost of the file tree.
* https://github.com/takaswie/snd-firewire-improve/
If using Ubuntu 16.04, deb package is now available in David
Henningsson's PPA. I appreciate his continuous help for my work, thank you.
* https://code.launchpad.net/~diwic/+archive/ubuntu/snd-firewire-improve
As I note, a commit for protocol v1 is omitted from this patchset, thus
it's not supported yet. For anyone has interests in it, I push a remote
branch with the commit.
* https://github.com/takaswie/snd-firewire-improve/tree/topic/motu-v1
I wrote libhinawa, a user space library with gobject introspection, to
communicate audio and music units on IEEE 1394 bus. Soon I'll release
v0.8.0 with HinawaSndMotu gobject class, to receive asynchronous
notifications from MOTU units. You can see its initial version in my
remote repository.
* https://github.com/takaswie/libhinawa/tree/topic/motu
libhinawa is already packaged for debian/ubuntu. In a few months, I'll
work to update the package in each repositories with a contributor,
Kentaro hayashi, who is a package maintainer in debian project.
* https://tracker.debian.org/pkg/libhinawa
* https://launchpad.net/ubuntu/+source/libhinawa
By the way, next, I'll post a patchset for snd-fireface, a driver for
RME FireWire series.
Thanks
Takashi Sakamoto
More information about the Alsa-devel
mailing list