Re: [PATCH v12 4/8] usb:gadget: Add SuperSpeed support to the Gadget Framework

From: Mike Frysinger
Date: Mon May 23 2011 - 18:19:20 EST


On Mon, May 23, 2011 at 08:31, Sebastian Andrzej Siewior wrote:
> * Tatyana Brokhman | 2011-05-23 09:41:13 [+0300]:
>>diff --git a/drivers/usb/gadget/composite.c
>>b/drivers/usb/gadget/composite.c
>>index 1c6bd66..7738302 100644
>>--- a/drivers/usb/gadget/composite.c
>>+++ b/drivers/usb/gadget/composite.c
>>@@ -1015,6 +1175,62 @@ composite_setup(struct usb_gadget *gadget, const struct usb_ctrlrequest *ctrl)
>> Â Â Â Â Â Â Â *((u8 *)req->buf) = value;
>> Â Â Â Â Â Â Â value = min(w_length, (u16) 1);
>> Â Â Â Â Â Â Â break;
>>+
>>+ Â Â Â/*
>>+ Â Â Â * USB 3.0 additions:
>>+ Â Â Â * Function driver should handle get_status request. If such cb
>>+ Â Â Â * wasn't supplied we respond with default value = 0
>>+ Â Â Â * Note: function driver should supply such cb only for the first
>>+ Â Â Â * interface of the function
>>+ Â Â Â */
>>+ Â Â Âcase USB_REQ_GET_STATUS:
>>+ Â Â Â Â Â Â Âif (!gadget_is_superspeed(gadget))
>>+ Â Â Â Â Â Â Â Â Â Â Âgoto unknown;
>>+ Â Â Â Â Â Â Âif (ctrl->bRequestType != (USB_DIR_IN | USB_RECIP_INTERFACE))
>>+ Â Â Â Â Â Â Â Â Â Â Âgoto unknown;
>>+ Â Â Â Â Â Â Âvalue = 2; Â Â Â/* This is the length of the get_status reply */
>>+ Â Â Â Â Â Â Â*((__le16 *)req->buf) = 0;
>
> Mike please correct me if I'm wrong bug this looks like a case for
> put_unaligned_le16().
> Is someone actually using gadget support on blackfin? I'm asking because
> config_buf() (same file, upstream) is using req->buf to build the
> descriptors in place and one element is le16 which should be affected.

yes, we do gadget stuff heavily on Blackfin with a few different
controllers. if things broke, we'd be unhappy ;).
-mike
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/