Commit 830d1b18 authored by Maulik Mankad's avatar Maulik Mankad Committed by Greg Kroah-Hartman

USB: gadget : Fix RNDIS code to pass USB Compliance tests (USBCV) with g_ether

This patch fixes a bug in the RNDIS code.

Due to this bug gether_connect() fails as the port remains un-initialized.

As a result following USB Compliance Tests were failing.
(1)EndpointDescriptorTest_DeviceConfigured
(2)Interface Descriptor Test.
(3)Halt Endpoint Test.
(4)SetConfigurationTest

The fix aligns rndis code with the CDC ECM for xxx_set_alt().

The above listed USB Compliance test passes with this fix.

Tested working fine on SDP with OMAP 3430.
Signed-off-by: default avatarMaulik Mankad <x0082077@ti.com>
CC: David Brownell <david-b@pacbell.net>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent 1f17c502
...@@ -475,7 +475,9 @@ static int rndis_set_alt(struct usb_function *f, unsigned intf, unsigned alt) ...@@ -475,7 +475,9 @@ static int rndis_set_alt(struct usb_function *f, unsigned intf, unsigned alt)
if (rndis->port.in_ep->driver_data) { if (rndis->port.in_ep->driver_data) {
DBG(cdev, "reset rndis\n"); DBG(cdev, "reset rndis\n");
gether_disconnect(&rndis->port); gether_disconnect(&rndis->port);
} else { }
if (!rndis->port.in) {
DBG(cdev, "init rndis\n"); DBG(cdev, "init rndis\n");
rndis->port.in = ep_choose(cdev->gadget, rndis->port.in = ep_choose(cdev->gadget,
rndis->hs.in, rndis->fs.in); rndis->hs.in, rndis->fs.in);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment