alsa-devel.alsa-project.org archive mirror
 help / color / mirror / Atom feed
From: Takashi Sakamoto <o-takashi@sakamocchi.jp>
To: forevernoob@tutanota.com
Cc: Alsa Devel <alsa-devel@alsa-project.org>
Subject: Re: How trivial would it be to port the DICE driver from FFADO?
Date: Wed, 10 Aug 2022 09:32:43 +0900	[thread overview]
Message-ID: <YvL8q7HII3df7Pte@workstation> (raw)
In-Reply-To: <N9213zQ--3-2@tutanota.com>

Hi,

I'm a maintainer of ALSA firewire stack. Thanks for your contacting to the
list.

On Tue, Aug 09, 2022 at 04:44:23PM +0200, forevernoob@tutanota.com wrote:
> Hello,
> 
> I'm new to these kinds of mailing lists so please forgive me if I'm doing something dumb.
> 
> I would love to see Allen & Heath Zed R16 as well as Midas Venice F32 support in ALSA.
> ...
> So my question would be: How difficult would it be to port this driver
> (more specifically: Port it sufficiently enough to support the
> aforementioned devices) ?
> 
> Are we talking trivial enough for someone with minimal C experience, a
> dedicated team of ALSA devs or something else?

If investigating just for code migration from libffado2, it's impossible
since the implementation of ALSA dice driver is completely different from
the implementation of the dice part of libffado2. They have different
root for development. Thus we need to start investigation for the devices
at the first place. It demands you for a bit patience.

As long as reading manuals of the models, hardware vendors selected
TCD2210 ASIC (Dice Jr.) for them. I know that some options were given to
the vendors when using the ASIC;
 1. just with TCAT general protocol
 2. with both TCAT general protocol and protocol extension
 3. with Open Generic Transporter (OGT) protocol.

If you can drive the devices by libffado2, the possibility of OGT is
dropped. The implementation of libffado2 mention about the 2nd option by
usage of word, EAP (=Extended Application Protocol), however I know the
case of TCD2220 without protocol extension. It's Lexicon FW810s[1], In
the case, we need to hard-code stream formats in ALSA dice driver by
investigation to actual models.

Anyway, if you are satisfied in libffado2, it's better to continue using
it. Of course, I would be glad if I got your help to extend ALSA firewire
stack.

P.S. If you are interested in DICE ASICs and protocols themselves, it's
a good start to read my user space implementation (but by Rust language),
which I recently published. You can see overview at crates.io[2].

[1] https://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound.git?id=9a08676fc596
[2] https://crates.io/crates/firewire-dice-protocols


Regards

Takashi Sakamoto

  reply	other threads:[~2022-08-10  0:33 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-08-09 14:44 How trivial would it be to port the DICE driver from FFADO? forevernoob
2022-08-10  0:32 ` Takashi Sakamoto [this message]
2022-08-19  1:30 ` Takashi Sakamoto

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=YvL8q7HII3df7Pte@workstation \
    --to=o-takashi@sakamocchi.jp \
    --cc=alsa-devel@alsa-project.org \
    --cc=forevernoob@tutanota.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).