[kernel] r17213 - in dists/squeeze/linux-2.6/debian: . patches/bugfix/all patches/series

Ben Hutchings benh at alioth.debian.org
Fri Apr 8 00:25:03 UTC 2011


Author: benh
Date: Fri Apr  8 00:24:56 2011
New Revision: 17213

Log:
usb-audio: Reduce packet size for some buggy USB MIDI devices (Closes: #617743)

Added:
   dists/squeeze/linux-2.6/debian/patches/bugfix/all/ALSA-usb-audio-define-another-USB-ID-for-a-buggy-USB.patch
   dists/squeeze/linux-2.6/debian/patches/bugfix/all/ALSA-usb-audio-reduce-MIDI-packet-size-to-work-aroun.patch
   dists/squeeze/linux-2.6/debian/patches/series/34
Modified:
   dists/squeeze/linux-2.6/debian/changelog

Modified: dists/squeeze/linux-2.6/debian/changelog
==============================================================================
--- dists/squeeze/linux-2.6/debian/changelog	Fri Apr  8 00:02:43 2011	(r17212)
+++ dists/squeeze/linux-2.6/debian/changelog	Fri Apr  8 00:24:56 2011	(r17213)
@@ -1,3 +1,11 @@
+linux-2.6 (2.6.32-34) UNRELEASED; urgency=low
+
+  [ Ben Hutchings ]
+  * usb-audio: Reduce packet size for some buggy USB MIDI devices
+    (Closes: #617743)
+
+ -- Ben Hutchings <ben at decadent.org.uk>  Fri, 08 Apr 2011 01:13:01 +0100
+
 linux-2.6 (2.6.32-33) stable; urgency=high
 
   [ maximilian attems ]

Added: dists/squeeze/linux-2.6/debian/patches/bugfix/all/ALSA-usb-audio-define-another-USB-ID-for-a-buggy-USB.patch
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/squeeze/linux-2.6/debian/patches/bugfix/all/ALSA-usb-audio-define-another-USB-ID-for-a-buggy-USB.patch	Fri Apr  8 00:24:56 2011	(r17213)
@@ -0,0 +1,26 @@
+From: Tarek Soliman <tarek at bashasoliman.com>
+Date: Mon, 4 Apr 2011 09:23:53 -0500
+Subject: [PATCH] ALSA: usb-audio: define another USB ID for a buggy USB MIDI cable
+
+commit 49c039f071d36586ba32da75996ef339e4ab8405 upstream.
+
+There are many USB MIDI cables out there that have buggy
+firmware that reports it can do more than 4 bytes in a
+packet when they can only properly handle 4
+
+This patch adds the ID of yet another one of those cables
+
+Signed-off-by: Tarek Soliman <tarek at bashasoliman.com>
+Signed-off-by: Takashi Iwai <tiwai at suse.de>
+[bwh: Adjust file name and line numbers for 2.6.32]
+---
+--- a/sound/usb/usbmidi.c
++++ b/sound/usb/usbmidi.c
+@@ -1138,6 +1138,7 @@ static int snd_usbmidi_out_endpoint_create(struct snd_usb_midi* umidi,
+ 	case USB_ID(0x15ca, 0x0101): /* Textech USB Midi Cable */
+ 	case USB_ID(0x15ca, 0x1806): /* Textech USB Midi Cable */
+ 	case USB_ID(0x1a86, 0x752d): /* QinHeng CH345 "USB2.0-MIDI" */
++	case USB_ID(0xfc08, 0x0101): /* Unknown vendor Cable */
+ 		ep->max_transfer = 4;
+ 		break;
+ 		/*

Added: dists/squeeze/linux-2.6/debian/patches/bugfix/all/ALSA-usb-audio-reduce-MIDI-packet-size-to-work-aroun.patch
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/squeeze/linux-2.6/debian/patches/bugfix/all/ALSA-usb-audio-reduce-MIDI-packet-size-to-work-aroun.patch	Fri Apr  8 00:24:56 2011	(r17213)
@@ -0,0 +1,44 @@
+From: Clemens Ladisch <clemens at ladisch.de>
+Date: Mon, 15 Feb 2010 08:55:28 +0100
+Subject: [PATCH] ALSA: usb-audio: reduce MIDI packet size to work around broken firmware
+
+commit f167e1d073278fe231bbdd5d6c24fb9d091aa544 upstream.
+
+Extend the list of devices whose firmware does not expect more than one
+USB MIDI packet in one USB packet.
+
+bug report: https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3752
+
+Signed-off-by: Clemens Ladisch <clemens at ladisch.de>
+Cc: <stable at kernel.org>
+Signed-off-by: Jaroslav Kysela <perex at perex.cz>
+[bwh: Backport to 2.6.32: s/umidi->dev/umidi->chip->dev/]
+---
+--- a/sound/usb/usbmidi.c
++++ b/sound/usb/usbmidi.c
+@@ -1125,10 +1125,22 @@ static int snd_usbmidi_out_endpoint_create(struct snd_usb_midi* umidi,
+ 		pipe = usb_sndintpipe(umidi->chip->dev, ep_info->out_ep);
+ 	else
+ 		pipe = usb_sndbulkpipe(umidi->chip->dev, ep_info->out_ep);
+-	if (umidi->chip->usb_id == USB_ID(0x0a92, 0x1020)) /* ESI M4U */
+-		ep->max_transfer = 4;
+-	else
++	switch (umidi->chip->usb_id) {
++	default:
+ 		ep->max_transfer = usb_maxpacket(umidi->chip->dev, pipe, 1);
++		break;
++		/*
++		 * Various chips declare a packet size larger than 4 bytes, but
++		 * do not actually work with larger packets:
++		 */
++	case USB_ID(0x0a92, 0x1020): /* ESI M4U */
++	case USB_ID(0x1430, 0x474b): /* RedOctane GH MIDI INTERFACE */
++	case USB_ID(0x15ca, 0x0101): /* Textech USB Midi Cable */
++	case USB_ID(0x15ca, 0x1806): /* Textech USB Midi Cable */
++	case USB_ID(0x1a86, 0x752d): /* QinHeng CH345 "USB2.0-MIDI" */
++		ep->max_transfer = 4;
++		break;
++	}
+ 	for (i = 0; i < OUTPUT_URBS; ++i) {
+ 		buffer = usb_buffer_alloc(umidi->chip->dev,
+ 					  ep->max_transfer, GFP_KERNEL,

Added: dists/squeeze/linux-2.6/debian/patches/series/34
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/squeeze/linux-2.6/debian/patches/series/34	Fri Apr  8 00:24:56 2011	(r17213)
@@ -0,0 +1,2 @@
++ bugfix/all/ALSA-usb-audio-reduce-MIDI-packet-size-to-work-aroun.patch
++ bugfix/all/ALSA-usb-audio-define-another-USB-ID-for-a-buggy-USB.patch



More information about the Kernel-svn-changes mailing list