diff options
author | Artem Egorkine <arteme@gmail.com> | 2022-12-25 12:57:27 +0200 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2022-12-26 09:06:19 +0100 |
commit | 8508fa2e7472f673edbeedf1b1d2b7a6bb898ecc (patch) | |
tree | ce35174482cc6e0b4bcedec73b7c6ab8199256cf /sound/usb/line6/midibuf.h | |
parent | Linux 6.2-rc1 (diff) | |
download | wireguard-linux-8508fa2e7472f673edbeedf1b1d2b7a6bb898ecc.tar.xz wireguard-linux-8508fa2e7472f673edbeedf1b1d2b7a6bb898ecc.zip |
ALSA: line6: correct midi status byte when receiving data from podxt
A PODxt device sends 0xb2, 0xc2 or 0xf2 as a status byte for MIDI
messages over USB that should otherwise have a 0xb0, 0xc0 or 0xf0
status byte. This is usually corrected by the driver on other OSes.
This fixes MIDI sysex messages sent by PODxt.
[ tiwai: fixed white spaces ]
Signed-off-by: Artem Egorkine <arteme@gmail.com>
Cc: <stable@vger.kernel.org>
Link: https://lore.kernel.org/r/20221225105728.1153989-1-arteme@gmail.com
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/usb/line6/midibuf.h')
-rw-r--r-- | sound/usb/line6/midibuf.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/sound/usb/line6/midibuf.h b/sound/usb/line6/midibuf.h index 124a8f9f7e96..542e8d836f87 100644 --- a/sound/usb/line6/midibuf.h +++ b/sound/usb/line6/midibuf.h @@ -8,6 +8,9 @@ #ifndef MIDIBUF_H #define MIDIBUF_H +#define LINE6_MIDIBUF_READ_TX 0 +#define LINE6_MIDIBUF_READ_RX 1 + struct midi_buffer { unsigned char *buf; int size; @@ -23,7 +26,7 @@ extern void line6_midibuf_destroy(struct midi_buffer *mb); extern int line6_midibuf_ignore(struct midi_buffer *mb, int length); extern int line6_midibuf_init(struct midi_buffer *mb, int size, int split); extern int line6_midibuf_read(struct midi_buffer *mb, unsigned char *data, - int length); + int length, int read_type); extern void line6_midibuf_reset(struct midi_buffer *mb); extern int line6_midibuf_write(struct midi_buffer *mb, unsigned char *data, int length); |