[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <op.v0ergn0d3l0zgt@mnazarewicz-glaptop>
Date: Thu, 18 Aug 2011 13:57:51 +0200
From: "Michal Nazarewicz" <mina86@...a86.com>
To: "Yang Rui Rui" <ruirui.r.yang@...to.com>
Cc: "Alan Stern" <stern@...land.harvard.edu>,
"Sergei Shtylyov" <sshtylyov@...sta.com>,
"Felipe Balbi" <balbi@...com>,
"Sebastian Andrzej Siewior" <bigeasy@...utronix.de>,
"Yang Ruirui R" <ruirui.r.yang@...toenator.com>,
"Greg Kroah-Hartman" <gregkh@...e.de>,
"linux-usb@...r.kernel.org" <linux-usb@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: Re: [PATCHv2] usb: gadget: get rid of USB_GADGET_DUALSPEED and
USB_GADGET_SUPERSPEED
On Thu, 18 Aug 2011 05:01:11 +0200, Yang Rui Rui <ruirui.r.yang@...to.com>
wrote:
> I did not see the include/linux/usb/gadget.h changes, did you have
> another patch?
> There's CONFIG_USB_GADGET_DUALSPEED ifdefs in gadget_is_dualspeed
> function of the gadget.h
> If so, I will get oops as before.
Thanks, fixed. I did “git add -u” while I was in drivers/usb/gadget so
gadget.h did not get added and I've overlooked it. Sorry about that.
> On 08/17/2011 11:33 PM, Michal Nazarewicz wrote:
>> --- a/drivers/usb/gadget/composite.c
>> +++ b/drivers/usb/gadget/composite.c
>> @@ -1559,12 +1559,6 @@ composite_resume(struct usb_gadget *gadget)
>> /*-------------------------------------------------------------------------*/
>>
>> static struct usb_gadget_driver composite_driver = {
>> -#ifdef CONFIG_USB_GADGET_SUPERSPEED
>> - .speed = USB_SPEED_SUPER,
>> -#else
>> - .speed = USB_SPEED_HIGH,
>> -#endif
>> -
>> .unbind = composite_unbind,
>>
>> .setup = composite_setup,
>> @@ -1609,8 +1603,7 @@ int usb_composite_probe(struct
>> usb_composite_driver *driver,
>> driver->iProduct = driver->name;
>> composite_driver.function = (char *) driver->name;
>> composite_driver.driver.name = driver->name;
>> - composite_driver.speed = min((u8)composite_driver.speed,
>> - (u8)driver->max_speed);
>> + composite_driver.speed = driver->max_speed;
> This does not works, many drivers will check the driver->speed, ie in
> musg_gadget.c
Uh? Not sure what you mean here. Note that driver above is not the same
structure as driver below. composite_driver is what musb_gadget_start()
will get.
> static int musb_gadget_start(struct usb_gadget *g,
> struct usb_gadget_driver *driver)
> {
> struct musb *musb = gadget_to_musb(g);
> unsigned long flags;
> int retval = -EINVAL;
>
> if (driver->speed != USB_SPEED_HIGH)
> goto err0;
> [snip]
>
>> composite = driver;
>> composite_gadget_bind = bind;
--
Best regards, _ _
.o. | Liege of Serenely Enlightened Majesty of o' \,=./ `o
..o | Computer Science, Michal "mina86" Nazarewicz (o o)
ooo +-----<email/xmpp: mnazarewicz@...gle.com>-----ooO--(_)--Ooo--
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists