From cdbd2acef252a17693558e3f7b51a29beb99edef Mon Sep 17 00:00:00 2001 From: =?utf8?q?=C5=A0erif=20Rami?= Date: Mon, 25 Aug 2025 09:25:57 +0200 Subject: [PATCH] ALSA: usb-audio: us144mkii: Fixes for handshake, MIDI out and cleanup MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Add a handshake value of 0x32, which is required when the device was previously used by another OS with the official drivers. Correct the last byte of the MIDI output protocol to 0xe0. Also, remove the unused DRIVER_VERSION macro. Signed-off-by: Å erif Rami Link: https://patch.msgid.link/20250825072557.7670-1-ramiserifpersia@gmail.com Signed-off-by: Takashi Iwai --- sound/usb/usx2y/us144mkii.c | 2 +- sound/usb/usx2y/us144mkii.h | 1 - sound/usb/usx2y/us144mkii_midi.c | 2 +- 3 files changed, 2 insertions(+), 3 deletions(-) diff --git a/sound/usb/usx2y/us144mkii.c b/sound/usb/usx2y/us144mkii.c index 3127a3206370..f6572a576c15 100644 --- a/sound/usb/usx2y/us144mkii.c +++ b/sound/usb/usx2y/us144mkii.c @@ -454,7 +454,7 @@ static int tascam_probe(struct usb_interface *intf, } if (handshake_buf[0] != 0x12 && handshake_buf[0] != 0x16 && - handshake_buf[0] != 0x30) { + handshake_buf[0] != 0x30 && handshake_buf[0] != 0x32) { dev_err(&dev->dev, "Unexpected handshake value: 0x%x\n", handshake_buf[0]); return -ENODEV; diff --git a/sound/usb/usx2y/us144mkii.h b/sound/usb/usx2y/us144mkii.h index ecc4c2fed9e6..95c4341f038a 100644 --- a/sound/usb/usx2y/us144mkii.h +++ b/sound/usb/usx2y/us144mkii.h @@ -15,7 +15,6 @@ #include #define DRIVER_NAME "us144mkii" -#define DRIVER_VERSION "1.7.6" /* --- USB Device Identification --- */ #define USB_VID_TASCAM 0x0644 diff --git a/sound/usb/usx2y/us144mkii_midi.c b/sound/usb/usx2y/us144mkii_midi.c index 08b04aa39278..ed2afec2a89a 100644 --- a/sound/usb/usx2y/us144mkii_midi.c +++ b/sound/usb/usx2y/us144mkii_midi.c @@ -257,7 +257,7 @@ static void tascam_midi_out_work_handler(struct work_struct *work) if (bytes_to_send < 9) memset(buf + bytes_to_send, 0xfd, 9 - bytes_to_send); - buf[8] = 0x00; + buf[8] = 0xe0; set_bit(urb_index, &tascam->midi_out_urbs_in_flight); urb->transfer_buffer_length = 9; -- 2.51.0