MLK-20493-5 usb: dwc3: change the dwc3 to be USB3 capable

Change the dwc3 device mode to be super speed capable.

Reviewed-by: Ye Li <ye.li@nxp.com>
Reviewed-by: Peter Chen <peter.chen@nxp.com>
Tested-by: faqiang.zhu <faqiang.zhu@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
This commit is contained in:
Li Jun 2018-12-13 10:56:29 +08:00
parent fd1146e796
commit a9dac41fea
1 changed files with 8 additions and 3 deletions

View File

@ -1481,7 +1481,7 @@ static int dwc3_gadget_start(struct usb_gadget *g,
if (dwc->revision < DWC3_REVISION_220A) { if (dwc->revision < DWC3_REVISION_220A) {
reg |= DWC3_DCFG_SUPERSPEED; reg |= DWC3_DCFG_SUPERSPEED;
} else { } else {
switch (dwc->maximum_speed) { switch (dwc->gadget.max_speed) {
case USB_SPEED_LOW: case USB_SPEED_LOW:
reg |= DWC3_DSTS_LOWSPEED; reg |= DWC3_DSTS_LOWSPEED;
break; break;
@ -1605,7 +1605,12 @@ static int dwc3_gadget_init_hw_endpoints(struct dwc3 *dwc,
} else { } else {
int ret; int ret;
usb_ep_set_maxpacket_limit(&dep->endpoint, 512); if (dwc->maximum_speed >= USB_SPEED_SUPER)
usb_ep_set_maxpacket_limit(&dep->endpoint,
1024);
else
usb_ep_set_maxpacket_limit(&dep->endpoint,
512);
dep->endpoint.max_streams = 15; dep->endpoint.max_streams = 15;
dep->endpoint.ops = &dwc3_gadget_ep_ops; dep->endpoint.ops = &dwc3_gadget_ep_ops;
list_add_tail(&dep->endpoint.ep_list, list_add_tail(&dep->endpoint.ep_list,
@ -2591,7 +2596,7 @@ int dwc3_gadget_init(struct dwc3 *dwc)
} }
dwc->gadget.ops = &dwc3_gadget_ops; dwc->gadget.ops = &dwc3_gadget_ops;
dwc->gadget.max_speed = USB_SPEED_SUPER; dwc->gadget.max_speed = dwc->maximum_speed;
dwc->gadget.speed = USB_SPEED_UNKNOWN; dwc->gadget.speed = USB_SPEED_UNKNOWN;
dwc->gadget.name = "dwc3-gadget"; dwc->gadget.name = "dwc3-gadget";