All of lore.kernel.org
 help / color / mirror / Atom feed
From: Daniel Mack <daniel@caiaq.de>
To: wdev@foltman.com
Cc: alsa-devel@alsa-project.org, patch@alsa-project.org
Subject: Re: [PATCH 1/1] ALSA: usb-audio: add support for Akai MPD16
Date: Tue, 18 May 2010 02:38:28 +0200	[thread overview]
Message-ID: <20100518003828.GT30801@buzzloop.caiaq.de> (raw)
In-Reply-To: <1274136495-5306-1-git-send-email-wdev@foltman.com>

On Mon, May 17, 2010 at 11:48:15PM +0100, wdev@foltman.com wrote:
> The decoding routine is based on own reverse-engineering. It seems to
> recognize all the messages that MPD16 sends during normal operation
> (that is, via standard MIDI messages).
> 
> Configuration (changing pad sensitivity, slider controller and MIDI
> notes) is not supported in this version.
> 
> Signed-off-by: Krzysztof Foltman <wdev@foltman.com>
> 
> diff --git a/sound/usb/midi.c b/sound/usb/midi.c
> index 2c1558c..57d642a 100644
> --- a/sound/usb/midi.c
> +++ b/sound/usb/midi.c
> @@ -645,6 +645,34 @@ static struct usb_protocol_ops snd_usbmidi_cme_ops = {
>  };
>  
>  /*
> + * AKAI MPD16 protocol: one or more chunks consisting of first byte of 
> + * (0x20 | msg_len) and then a MIDI message (msg_len bytes long)
> + * 
> + * Messages sent:
> + * 21 FE (active sense)
> + * 23 90 xx xx (note on)
> + * 23 Ax xx xx (polyphonic pressure)
> + * 23 Bx xx xx (control change)
> + */
> +static void snd_usbmidi_akai_input(struct snd_usb_midi_in_endpoint *ep,
> +				   uint8_t *buffer, int buffer_length)
> +{
> +	unsigned int pos = 0;
> +	while (pos < (unsigned)buffer_length && (buffer[pos] & 0xF8) == 0x20)
> +	{
> +		int msg_len = buffer[pos] & 0x0f;
> +		snd_usbmidi_input_data(ep, 0, &buffer[pos + 1], msg_len);
> +		pos += 1 + msg_len;
> +	}
> +}

Just a minor coding style flaw here for the curly brackets. See
Documentation/CodingStyle or let scripts/checkpatch.pl annoy you :)

FWIW, I think the block above could also be a for-loop, but that's
certainly a matter of taste.

Thanks,
Daniel

  reply	other threads:[~2010-05-18  0:38 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-05-17 22:48 [PATCH 1/1] ALSA: usb-audio: add support for Akai MPD16 wdev
2010-05-18  0:38 ` Daniel Mack [this message]
2010-05-18 18:36   ` Krzysztof Foltman
  -- strict thread matches above, loose matches on Subject: below --
2010-05-18 18:37 Krzysztof Foltman
2010-05-19  6:59 ` Clemens Ladisch
2010-05-19 20:31   ` Krzysztof Foltman
2010-05-19 20:06 Krzysztof Foltman
2010-05-20  7:26 ` Clemens Ladisch
2010-05-20  7:49   ` Krzysztof Foltman
2010-05-20  9:21     ` Clemens Ladisch
2010-05-25  9:07       ` Krzysztof Foltman
2010-05-25  9:39         ` Daniel Mack
2010-05-20 19:31 Krzysztof Foltman

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=20100518003828.GT30801@buzzloop.caiaq.de \
    --to=daniel@caiaq.de \
    --cc=alsa-devel@alsa-project.org \
    --cc=patch@alsa-project.org \
    --cc=wdev@foltman.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.