patch "usb: gadget: composite: correctly initialize ep->maxpacket" added to usb-next
Subsystems (2)
This is a note to let you know that I've just added the patch titled
usb: gadget: composite: correctly initialize ep->maxpacket
to my usb git tree which can be found at
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git
in the usb-next branch.
The patch will show up in the next release of the linux-next tree (usually sometime within the next 24 hours during the week.)
The patch will also be merged in the next major kernel release during the merge window.
If you have any questions about this process, please let me know.
Quoted 1 line
From
e8f29bb719b47a234f33b0af62974d7a9521a52cMon Sep 17 00:00:00 2001
From: Felipe Balbi <[email protected]>
Date: Wed, 28 Sep 2016 10:38:11 +0300
Subject: usb: gadget: composite: correctly initialize ep->maxpacket
usb_endpoint_maxp() returns wMaxPacketSize in its raw form. Without taking into consideration that it also contains other bits reserved for isochronous endpoints.
This patch fixes one occasion where this is a problem by making sure that we initialize ep->maxpacket only with lower 10 bits of the value returned by usb_endpoint_maxp(). Note that seperate patches will be necessary to audit all call sites of usb_endpoint_maxp() and make sure that usb_endpoint_maxp() only returns lower 10 bits of wMaxPacketSize.
--- drivers/usb/gadget/composite.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/usb/gadget/composite.c +1 -1
@@ -197,7 +197,7 @@ int config_ep_by_speed(struct usb_gadget *g, ep_found:/* commit results */ - _ep->maxpacket =usb_endpoint_maxp (chosen_desc); + _ep->maxpacket =usb_endpoint_maxp (chosen_desc) &0x7ff ; _ep->desc = chosen_desc; _ep->comp_desc =NULL ; _ep->maxburst =0 ;
Signature · 1 line
2.10.2