mbox series

[0/3] ALSA: bebob: enable MIDI message transmission for multiple ports

Message ID 20210321032831.340278-1-o-takashi@sakamocchi.jp (mailing list archive)
Headers show
Series ALSA: bebob: enable MIDI message transmission for multiple ports | expand

Message

Takashi Sakamoto March 21, 2021, 3:28 a.m. UTC
Hi,

Although below models supported by ALSA bebob driver have multiple MIDI
ports, the driver just adds one pair of MIDI ports for ALSA Rawmidi
interface:

 * M-Audio ProjectMix I/O
 * ESI Quatafire 610

The cause comes from two bugs:

 * The driver registers the number of MIDI conformant data channels into
   AM824 data block processing layer, instead of the number of MIDI
   ports.
 * For Quatafire, the driver counts plugs with MIDI type, however the
   number of physical MIDI ports is expressed in the number of channels
   on the plugs.

This patchset enables MIDI message transmission for multiple ports.

Takashi Sakamoto (3):
  ALSA: bebob: code refactoring for stream format detection
  ALSA: bebob: detect the number of available MIDI ports
  ALSA: bebob: enable to deliver MIDI messages for multiple ports

 sound/firewire/bebob/bebob.h         |   2 +
 sound/firewire/bebob/bebob_command.c |  36 ++++++
 sound/firewire/bebob/bebob_stream.c  | 163 ++++++++++++++-------------
 3 files changed, 120 insertions(+), 81 deletions(-)

Comments

Takashi Iwai March 22, 2021, 11:23 a.m. UTC | #1
On Sun, 21 Mar 2021 04:28:28 +0100,
Takashi Sakamoto wrote:
> 
> Hi,
> 
> Although below models supported by ALSA bebob driver have multiple MIDI
> ports, the driver just adds one pair of MIDI ports for ALSA Rawmidi
> interface:
> 
>  * M-Audio ProjectMix I/O
>  * ESI Quatafire 610
> 
> The cause comes from two bugs:
> 
>  * The driver registers the number of MIDI conformant data channels into
>    AM824 data block processing layer, instead of the number of MIDI
>    ports.
>  * For Quatafire, the driver counts plugs with MIDI type, however the
>    number of physical MIDI ports is expressed in the number of channels
>    on the plugs.
> 
> This patchset enables MIDI message transmission for multiple ports.
> 
> Takashi Sakamoto (3):
>   ALSA: bebob: code refactoring for stream format detection
>   ALSA: bebob: detect the number of available MIDI ports
>   ALSA: bebob: enable to deliver MIDI messages for multiple ports

Applied all three patches now.  Thanks.


Takashi