Sure, definitely; my point was that the kernel ABI which userspace mixer applications are going to use could be a) the ALSA hwdep interface, or b) the ALSA hwdep interface together with firewire-core's firewire-cdev interface, but I understood that b) is the first choice. Specifically, provide in ALSA hwdep only the absolutely necessary interfaces and do as much as possible via firewire-cdev.
Exactly.
and because some devices (which ones?) may have write-only registers, of which both streaming driver and mixer application want to know what is being written there.
For this purpose, ALSA Control interface can also be used. One example is M-Audio 'Firewire 1814', see: [PATCH 52/52] bebob: Add support for M-Audio special Firewire series http://mailman.alsa-project.org/pipermail/alsa-devel/2014-January/071873.htm...
And See: [alsa-devel] include/uapi/firewire.h for other firewire drivers http://mailman.alsa-project.org/pipermail/alsa-devel/2013-November/068069.ht...
(This device has another bit issue but here I don't mention about it.)
Furthermore, it can't be a kernel interface like sysfs or configfs because of the complexity and variety of control protocols of FireWire audio devices.
Indeed.
Takashi Sakamoto o-takashi@sakamocchi.jp