W dniu 06.02.2011 00:29, Sergei Shtylyov pisze: > Hello. > > On 06.02.2011 0:41, Maciej Szmigiero wrote: > >> New version of patch which autodetects devices with ACM class. >> Tested on Galaxy Spica. > >> Signed-off-by: Maciej Szmigiero <mhej@xxxxx> > >> diff --git a/drivers/usb/serial/visor.c b/drivers/usb/serial/visor.c >> index 15a5d89..e1c4527 100644 >> --- a/drivers/usb/serial/visor.c >> +++ b/drivers/usb/serial/visor.c > [...] >> @@ -479,6 +480,15 @@ static int visor_probe(struct usb_serial *serial, >> >> dbg("%s", __func__); >> >> + /* some Samsung Android phones in modem mode have the same ID */ >> + /* as SPH-I500, but they are ACM devices, so dont bind to them */ > > The preferred style for the multi-line comments is this: > > /* > * bla > * bla > */ > >> + if ((id->idVendor == SAMSUNG_VENDOR_ID)&& >> + (id->idProduct == SAMSUNG_SPH_I500_ID)&& >> + (serial->dev->descriptor.bDeviceClass == USB_CLASS_COMM)&& >> + (serial->dev->descriptor.bDeviceSubClass == >> + USB_CDC_SUBCLASS_ACM)) > > Parens around == not necessary... > > WBR, Sergei Thanks for comments, new version of this patch with style fixes follows. Best regards, Maciej Szmigiero Signed-off-by: Maciej Szmigiero <mhej@xxxxx> diff --git a/drivers/usb/serial/visor.c b/drivers/usb/serial/visor.c index 15a5d89..0f75948 100644 --- a/drivers/usb/serial/visor.c +++ b/drivers/usb/serial/visor.c @@ -27,6 +27,7 @@ #include <linux/uaccess.h> #include <linux/usb.h> #include <linux/usb/serial.h> +#include <linux/usb/cdc.h> #include "visor.h" /* @@ -479,6 +480,17 @@ static int visor_probe(struct usb_serial *serial, dbg("%s", __func__); + /* + * some Samsung Android phones in modem mode have the same ID + * as SPH-I500, but they are ACM devices, so dont bind to them + */ + if (id->idVendor == SAMSUNG_VENDOR_ID && + id->idProduct == SAMSUNG_SPH_I500_ID && + serial->dev->descriptor.bDeviceClass == USB_CLASS_COMM && + serial->dev->descriptor.bDeviceSubClass == + USB_CDC_SUBCLASS_ACM) + return -ENODEV; + if (serial->dev->actconfig->desc.bConfigurationValue != 1) { dev_err(&serial->dev->dev, "active config #%d != 1 ??\n", serial->dev->actconfig->desc.bConfigurationValue); -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html