From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755802AbbDVK3C (ORCPT ); Wed, 22 Apr 2015 06:29:02 -0400 Received: from mail-lb0-f173.google.com ([209.85.217.173]:35419 "EHLO mail-lb0-f173.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752465AbbDVK27 (ORCPT ); Wed, 22 Apr 2015 06:28:59 -0400 Message-ID: <553777E8.8000201@cogentembedded.com> Date: Wed, 22 Apr 2015 13:28:56 +0300 From: Sergei Shtylyov User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:31.0) Gecko/20100101 Thunderbird/31.6.0 MIME-Version: 1.0 To: "Jason A. Donenfeld" , linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org, Johan Hovold , Greg Kroah-Hartman Subject: Re: [PATCH] pl2303, visor: Match I330 phone more precisely References: <20150421170301.GA17927@kroah.com> <1429697645-24505-1-git-send-email-Jason@zx2c4.com> In-Reply-To: <1429697645-24505-1-git-send-email-Jason@zx2c4.com> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hello. On 4/22/2015 1:14 PM, Jason A. Donenfeld wrote: > Samsung has just released a portable USB3 SSD, coming in a very small > and nice form factor. It's USB ID is 04e8:8001, which unfortunately is > already used by the pl2303 USB serial driver and the Palm Visor driver > for the Samsung I330 phone cradle. Having pl2303 or visor pick up this > device ID results in conflicts with the usb-storage driver, which > handles the newly released portable USB3 SSD. > To work around this conflict, I've dug up a mailing list post [1] from a > long time ago, in which a user posts the full USB descriptor > information. The most specific value in this appears to be the interface > class, which has value 255 (0xff). Since usb-storage requires an > interface class of 0x8, I believe it's correct to disambiguate the two > devices by matching on 0xff inside pl2303 and visor. > [1] http://permalink.gmane.org/gmane.linux.usb.user/4264 > Signed-off-by: Jason A. Donenfeld [...] > diff --git a/drivers/usb/serial/pl2303.h b/drivers/usb/serial/pl2303.h > index 71fd9da..9c29fe8 100644 > --- a/drivers/usb/serial/pl2303.h > +++ b/drivers/usb/serial/pl2303.h > @@ -65,6 +65,7 @@ > /* Samsung I330 phone cradle */ > #define SAMSUNG_VENDOR_ID 0x04e8 > #define SAMSUNG_PRODUCT_ID 0x8001 > +#define SAMSUNG_IF_CLASS 0xff No need for this #define, especially here. 0xff just means vendor-specific AFAIK. > > #define SIEMENS_VENDOR_ID 0x11f5 > #define SIEMENS_PRODUCT_ID_SX1 0x0001 [...] > diff --git a/drivers/usb/serial/visor.h b/drivers/usb/serial/visor.h > index 4c456dd..ffe93a2 100644 > --- a/drivers/usb/serial/visor.h > +++ b/drivers/usb/serial/visor.h > @@ -54,6 +54,7 @@ > > #define SAMSUNG_VENDOR_ID 0x04E8 > #define SAMSUNG_SCH_I330_ID 0x8001 > +#define SAMSUNG_SCH_I330_IFCLASS 0xFF No need for this #define, especially here. 0xff just means vendor-specific AFAIK. > #define SAMSUNG_SPH_I500_ID 0x6601 > > #define TAPWAVE_VENDOR_ID 0x12EF WBR, Sergei