<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/usb, branch v3.3.6</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/drivers/usb?h=v3.3.6</id>
<link rel='self' href='https://git.amat.us/linux/atom/drivers/usb?h=v3.3.6'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2012-05-12T16:32:22Z</updated>
<entry>
<title>usb: gadget: udc-core: fix incompatibility with dummy-hcd</title>
<updated>2012-05-12T16:32:22Z</updated>
<author>
<name>Alan Stern</name>
<email>stern@rowland.harvard.edu</email>
</author>
<published>2012-04-26T15:31:57Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=59da83377222910347425ec225cf3a665e0c8e1b'/>
<id>urn:sha1:59da83377222910347425ec225cf3a665e0c8e1b</id>
<content type='text'>
commit 320cd1e750f1bf3e47eb41209dcb2be07264cb76 upstream.

This patch (as1548) fixes a recently-introduced incompatibility
between the UDC core and the dummy-hcd driver.  Commit
8ae8090c82eb407267001f75b3d256b3bd4ae691 (usb: gadget: udc-core: fix
asymmetric calls in remove_driver) moved the usb_gadget_udc_stop()
call in usb_gadget_remove_driver() below the usb_gadget_disconnect()
call.

As a result, usb_gadget_disconnect() gets called at a time when the
gadget driver believes it has been unbound but dummy-hcd believes
it has not.  A nasty error ensues when dummy-hcd calls the gadget
driver's disconnect method a second time.

To fix the problem, this patch moves the gadget driver's unbind
notification after the usb_gadget_disconnect() call.  Now nothing
happens between the two unbind notifications, so nothing goes wrong.

Signed-off-by: Alan Stern &lt;stern@rowland.harvard.edu&gt;
Tested-by: Alexander Shishkin &lt;alexander.shishkin@linux.intel.com&gt;
Signed-off-by: Felipe Balbi &lt;balbi@ti.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>usb: gadget: udc-core: fix wrong call order</title>
<updated>2012-05-12T16:32:22Z</updated>
<author>
<name>Felipe Balbi</name>
<email>balbi@ti.com</email>
</author>
<published>2012-04-27T08:02:15Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=804596fcfa2946ea83737346290f806651cd69ea'/>
<id>urn:sha1:804596fcfa2946ea83737346290f806651cd69ea</id>
<content type='text'>
commit 83a787a71e034244a9fd1d5988fe18f226341417 upstream.

commit 6d258a4 (usb: gadget: udc-core: stop UDC on device-initiated
disconnect) introduced another case of asymmetric calls when issuing
a device-initiated disconnect. Fix it.

Reported-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
Signed-off-by: Felipe Balbi &lt;balbi@ti.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>USB: ehci-tegra: remove redundant gpio_set_value</title>
<updated>2012-05-07T15:53:24Z</updated>
<author>
<name>Stephen Warren</name>
<email>swarren@nvidia.com</email>
</author>
<published>2012-04-30T23:24:10Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=174c50cdb6104cb3c3bc1f4ff00ad20881ab00b7'/>
<id>urn:sha1:174c50cdb6104cb3c3bc1f4ff00ad20881ab00b7</id>
<content type='text'>
commit 04c235c92ce8474e9f2b358bd97f013a500385f2 upstream.

The immediately preceding gpio_direction_output() already set the value,
so there's no need to repeat it. This also prevents gpio_set_value() from
WARNing when the GPIO is sleepable (e.g. is on an I2C expander); the set
direction API is always sleepable, but plain set_value isn't.

Signed-off-by: Stephen Warren &lt;swarren@nvidia.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>usb gadget: uvc: uvc_request_data::length field must be signed</title>
<updated>2012-05-07T15:53:23Z</updated>
<author>
<name>Laurent Pinchart</name>
<email>laurent.pinchart@ideasonboard.com</email>
</author>
<published>2012-04-24T09:29:42Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=a6e9525b5f484e1fe4d27c39182728e0ab4d9012'/>
<id>urn:sha1:a6e9525b5f484e1fe4d27c39182728e0ab4d9012</id>
<content type='text'>
commit 6f6543f53f9ce136e01d7114bf6f0818ca54fb41 upstream.

The field is used to pass the UVC request data length, but can also be
used to signal an error when setting it to a negative value. Switch from
unsigned int to __s32.

Reported-by: Fernandez Gonzalo &lt;gfernandez@copreci.es&gt;
Signed-off-by: Laurent Pinchart &lt;laurent.pinchart@ideasonboard.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>usb: gadget: dummy: do not call pullup() on udc_stop()</title>
<updated>2012-05-07T15:53:23Z</updated>
<author>
<name>Felipe Balbi</name>
<email>balbi@ti.com</email>
</author>
<published>2012-04-18T10:59:30Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=a70de1fef4bef503aa1e676f392dee159ac17865'/>
<id>urn:sha1:a70de1fef4bef503aa1e676f392dee159ac17865</id>
<content type='text'>
commit 15b120d67019d691e4389372967332d74a80522a upstream.

pullup() is already called properly by udc-core.c and
there's no need to call it from udc_stop(), in fact that
will cause issues.

Reviewed-by: Alexander Shishkin &lt;alexander.shishkin@linux.intel.com&gt;
Acked-by: Alan Stern &lt;stern@rowland.harvard.edu&gt;
Signed-off-by: Felipe Balbi &lt;balbi@ti.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>USB: gadget: storage gadgets send wrong error code for unknown commands</title>
<updated>2012-05-07T15:53:23Z</updated>
<author>
<name>Alan Stern</name>
<email>stern@rowland.harvard.edu</email>
</author>
<published>2012-04-11T20:09:10Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=66a78b37c83ac923a58b886b32b815944c6491b7'/>
<id>urn:sha1:66a78b37c83ac923a58b886b32b815944c6491b7</id>
<content type='text'>
commit c85dcdac5852295cf6822f5c4331a6ddab72581f upstream.

This patch (as1539) fixes a minor bug in the mass-storage gadget
drivers.  When an unknown command is received, the error code sent
back is "Invalid Field in CDB" rather than "Invalid Command".  This is
because the bitmask of CDB bytes allowed to be nonzero is incorrect.

When handling an unknown command, we don't care which command bytes
are nonzero.  All the bits in the mask should be set, not just eight
of them.

Signed-off-by: Alan Stern &lt;stern@rowland.harvard.edu&gt;
CC: Michal Nazarewicz &lt;mina86@mina86.com&gt;
Signed-off-by: Felipe Balbi &lt;balbi@ti.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>USB: EHCI: fix crash during suspend on ASUS computers</title>
<updated>2012-05-07T15:53:23Z</updated>
<author>
<name>Alan Stern</name>
<email>stern@rowland.harvard.edu</email>
</author>
<published>2012-04-24T18:07:22Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=1ce9245f5aff46201fa81fdd3f796a6c9f3ad1ab'/>
<id>urn:sha1:1ce9245f5aff46201fa81fdd3f796a6c9f3ad1ab</id>
<content type='text'>
commit 151b61284776be2d6f02d48c23c3625678960b97 upstream.

This patch (as1545) fixes a problem affecting several ASUS computers:
The machine crashes or corrupts memory when going into suspend if the
ehci-hcd driver is bound to any controllers.  Users have been forced
to unbind or unload ehci-hcd before putting their systems to sleep.

After extensive testing, it was determined that the machines don't
like going into suspend when any EHCI controllers are in the PCI D3
power state.  Presumably this is a firmware bug, but there's nothing
we can do about it except to avoid putting the controllers in D3
during system sleep.

The patch adds a new flag to indicate whether the problem is present,
and avoids changing the controller's power state if the flag is set.
Runtime suspend is unaffected; this matters only for system suspend.
However as a side effect, the controller will not respond to remote
wakeup requests while the system is asleep.  Hence USB wakeup is not
functional -- but of course, this is already true in the current state
of affairs.

This fixes Bugzilla #42728.

Signed-off-by: Alan Stern &lt;stern@rowland.harvard.edu&gt;
Tested-by: Steven Rostedt &lt;rostedt@goodmis.org&gt;
Tested-by: Andrey Rahmatullin &lt;wrar@wrar.name&gt;
Tested-by: Oleksij Rempel (fishor) &lt;bug-track@fisher-privat.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>USB: cdc-wdm: fix race leading leading to memory corruption</title>
<updated>2012-05-07T15:53:22Z</updated>
<author>
<name>Oliver Neukum</name>
<email>oliver@neukum.org</email>
</author>
<published>2012-04-26T19:59:10Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=b9e7d6b2c090c5a0227739eae8e81355d76d05b6'/>
<id>urn:sha1:b9e7d6b2c090c5a0227739eae8e81355d76d05b6</id>
<content type='text'>
commit 5c22837adca7c30b66121cf18ad3e160134268d4 upstream.

This patch fixes a race whereby a pointer to a buffer
would be overwritten while the buffer was in use leading
to a double free and a memory leak. This causes crashes.
This bug was introduced in 2.6.34

Signed-off-by: Oliver Neukum &lt;oneukum@suse.de&gt;
Tested-by: Bjørn Mork &lt;bjorn@mork.no&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>usb: dwc3: ep0: increment "actual" on bounced ep0 case</title>
<updated>2012-04-27T17:16:53Z</updated>
<author>
<name>Felipe Balbi</name>
<email>balbi@ti.com</email>
</author>
<published>2012-03-21T09:44:00Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=36de412a4eb52d3558b946f7055e83c19c31b1ba'/>
<id>urn:sha1:36de412a4eb52d3558b946f7055e83c19c31b1ba</id>
<content type='text'>
commit cd423dd3634a5232a3019eb372b144619a61cd16 upstream.

due to a HW limitation we have a bounce buffer for ep0
out transfers which are not aligned with MaxPacketSize.

On such case we were not increment r-&gt;actual as we should.

This patch fixes that mistake.

Signed-off-by: Felipe Balbi &lt;balbi@ti.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>usb: musb: omap: fix the error check for pm_runtime_get_sync</title>
<updated>2012-04-27T17:16:51Z</updated>
<author>
<name>Shubhrajyoti D</name>
<email>shubhrajyoti@ti.com</email>
</author>
<published>2012-03-22T07:18:06Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=5d782e6bba7fa9da7347b8ac749fc18176be9ae3'/>
<id>urn:sha1:5d782e6bba7fa9da7347b8ac749fc18176be9ae3</id>
<content type='text'>
commit ad579699c4f0274bf522a9252ff9b20c72197e48 upstream.

pm_runtime_get_sync returns a signed integer. In case of errors
it returns a negative value. This patch fixes the error check
by making it signed instead of unsigned thus preventing register
access if get_sync_fails. Also passes the error cause to the
debug message.

Cc:  Kishon Vijay Abraham I &lt;kishon@ti.com&gt;
Signed-off-by: Shubhrajyoti D &lt;shubhrajyoti@ti.com&gt;
Signed-off-by: Felipe Balbi &lt;balbi@ti.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
</feed>
