<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/usb, branch v4.1</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/
</subtitle>
<id>https://git.shady.money/linux/atom?h=v4.1</id>
<link rel='self' href='https://git.shady.money/linux/atom?h=v4.1'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/'/>
<updated>2015-06-05T14:19:45Z</updated>
<entry>
<title>Merge tag 'usb-serial-4.1-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/johan/usb-serial into usb-linus</title>
<updated>2015-06-05T14:19:45Z</updated>
<author>
<name>Greg Kroah-Hartman</name>
<email>gregkh@linuxfoundation.org</email>
</author>
<published>2015-06-05T14:19:45Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=9d082030692ab37c7d5c1f357b34d9170256d581'/>
<id>urn:sha1:9d082030692ab37c7d5c1f357b34d9170256d581</id>
<content type='text'>
Johan writes:

USB-serial fixes for v4.1-rc7

Here are a couple of new device ids.

Signed-off-by: Johan Hovold &lt;johan@kernel.org&gt;
</content>
</entry>
<entry>
<title>USB: cp210x: add ID for HubZ dual ZigBee and Z-Wave dongle</title>
<updated>2015-06-04T21:22:16Z</updated>
<author>
<name>John D. Blair</name>
<email>johnb@candicontrols.com</email>
</author>
<published>2015-06-04T20:18:19Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=df72d588c54dad57dabb3cc8a87475d8ed66d806'/>
<id>urn:sha1:df72d588c54dad57dabb3cc8a87475d8ed66d806</id>
<content type='text'>
Added the USB serial device ID for the HubZ dual ZigBee
and Z-Wave radio dongle.

Signed-off-by: John D. Blair &lt;johnb@candicontrols.com&gt;
Cc: stable &lt;stable@vger.kernel.org&gt;
Signed-off-by: Johan Hovold &lt;johan@kernel.org&gt;
</content>
</entry>
<entry>
<title>Merge tag 'fixes-for-v4.1-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/balbi/usb into usb-linus</title>
<updated>2015-05-27T02:35:49Z</updated>
<author>
<name>Greg Kroah-Hartman</name>
<email>gregkh@linuxfoundation.org</email>
</author>
<published>2015-05-27T02:35:49Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=13557b5d8477cc978b4ef08424f69789858670d0'/>
<id>urn:sha1:13557b5d8477cc978b4ef08424f69789858670d0</id>
<content type='text'>
Felipe writes:

usb: fixes for v4.1-rc5

A few late important fixes which have been pending
on mailing list due to my vacations.

The important fixes are a fix for DEPCMD and DGCMD
status bitfields on DWC3, a couple fixes for Renesas
USB Controller, one of which prevents a broken DT
binding from reaching v4.1-final, and an old fix for
s3c2410-udc where pullup logic was reversed.

Signed-off-by: Felipe Balbi &lt;balbi@ti.com&gt;
</content>
</entry>
<entry>
<title>usb: renesas_usbhs: Don't disable the pipe if Control write status stage</title>
<updated>2015-05-26T15:21:53Z</updated>
<author>
<name>Yoshihiro Shimoda</name>
<email>yoshihiro.shimoda.uh@renesas.com</email>
</author>
<published>2015-05-26T11:13:43Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=93fb9127cb63a3246b32d48fa273010764687862'/>
<id>urn:sha1:93fb9127cb63a3246b32d48fa273010764687862</id>
<content type='text'>
This patch fixes an issue that sometimes this controller is not able
to complete the Control write status stage.

This driver should enable DCPCTR.CCPL and PID_BUF to complete the status
stage. However, if this driver detects the ctrl_stage interruption first
before the control write data is received, this driver will clear the
PID_BUF wrongly in the usbhsf_pio_try_pop(). To avoid this issue, this
patch doesn't clear the PID_BUF in the usbhsf_pio_try_pop().
(Since also the privious code doesn't disable the PID_BUF after a control
 transfer was finished, this patch doesn't have any side efforts.)

Signed-off-by: Yoshihiro Shimoda &lt;yoshihiro.shimoda.uh@renesas.com&gt;
Signed-off-by: Felipe Balbi &lt;balbi@ti.com&gt;
</content>
</entry>
<entry>
<title>usb: renesas_usbhs: Fix fifo unclear in usbhsf_prepare_pop</title>
<updated>2015-05-26T15:21:48Z</updated>
<author>
<name>Kazuya Mizuguchi</name>
<email>kazuya.mizuguchi.ks@renesas.com</email>
</author>
<published>2015-05-26T11:13:42Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=e73d42f15f90614538edeb5d4102f847105f86f2'/>
<id>urn:sha1:e73d42f15f90614538edeb5d4102f847105f86f2</id>
<content type='text'>
This patch fixes an issue for control write. When usbhsf_prepare_pop()
is called after this driver called a gadget setup function, this controller
doesn't receive the control write data. So, this patch adds a code to clear
the fifo for control write in usbhsf_prepare_pop().

Signed-off-by: Kazuya Mizuguchi &lt;kazuya.mizuguchi.ks@renesas.com&gt;
Signed-off-by: Yoshihiro Shimoda &lt;yoshihiro.shimoda.uh@renesas.com&gt;
Signed-off-by: Felipe Balbi &lt;balbi@ti.com&gt;
</content>
</entry>
<entry>
<title>usb: gadget: f_fs: fix check in read operation</title>
<updated>2015-05-26T15:20:57Z</updated>
<author>
<name>Rui Miguel Silva</name>
<email>rui.silva@linaro.org</email>
</author>
<published>2015-05-20T13:53:33Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=342f39a6c8d34d638a87b7d5f2156adc4db2585c'/>
<id>urn:sha1:342f39a6c8d34d638a87b7d5f2156adc4db2585c</id>
<content type='text'>
when copying to iter the size can be different then the iov count,
the check for full iov is wrong and make any read on request which
is not the exactly size of iov to return -EFAULT.

So, just check the success of the copy.

Signed-off-by: Rui Miguel Silva &lt;rui.silva@linaro.org&gt;
Signed-off-by: Felipe Balbi &lt;balbi@ti.com&gt;
</content>
</entry>
<entry>
<title>usb: musb: fix order of conditions for assigning end point operations</title>
<updated>2015-05-26T15:15:10Z</updated>
<author>
<name>Ben Hutchings</name>
<email>ben@decadent.org.uk</email>
</author>
<published>2015-05-24T03:27:32Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=da96cfc133350024ba68ef3289faeb539ee13872'/>
<id>urn:sha1:da96cfc133350024ba68ef3289faeb539ee13872</id>
<content type='text'>
Currently we always assign one of the two common implementations of
ep_offset and ep_select operations, overwriting any platform-specific
implementations.

Fixes: d026e9c76aac ("usb: musb: Change end point selection to use ...")
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
Signed-off-by: Felipe Balbi &lt;balbi@ti.com&gt;
</content>
</entry>
<entry>
<title>usb: gadget: f_uac1: check return code from config_ep_by_speed</title>
<updated>2015-05-26T15:15:09Z</updated>
<author>
<name>Michael Trimarchi</name>
<email>michael@amarulasolutions.com</email>
</author>
<published>2015-05-18T15:28:58Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=ca4de53c522f261e84efb659a07435bd1a5a8828'/>
<id>urn:sha1:ca4de53c522f261e84efb659a07435bd1a5a8828</id>
<content type='text'>
Not checking config_ep_by_speed could lead to a kernel
NULL pointer dereference error in usb_ep_enable

Cc: Felipe Balbi &lt;balbi@ti.com&gt;
Signed-off-by: Michael Trimarchi &lt;michael@amarulasolutions.com&gt;
Signed-off-by: Felipe Balbi &lt;balbi@ti.com&gt;
</content>
</entry>
<entry>
<title>usb: gadget: ffs: fix: Always call ffs_closed() in ffs_data_clear()</title>
<updated>2015-05-26T15:15:09Z</updated>
<author>
<name>Krzysztof Opasiak</name>
<email>k.opasiak@samsung.com</email>
</author>
<published>2015-05-22T15:25:18Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=49a79d8b0a5f8239b8424a3eb730006faada0ad8'/>
<id>urn:sha1:49a79d8b0a5f8239b8424a3eb730006faada0ad8</id>
<content type='text'>
Originally FFS_FL_CALL_CLOSED_CALLBACK flag has been used to
indicate if we should call ffs_closed_callback().

Commit 4b187fceec3c ("usb: gadget: FunctionFS: add devices
management code") changed its semantic to indicate if we should
call ffs_closed() function which does a little bit more.

This situation leads to:

[  122.362269] ------------[ cut here ]------------
[  122.362287] WARNING: CPU: 2 PID: 2384 at drivers/usb/gadget/function/f_fs.c:3417 ffs_ep0_write+0x730/0x810 [usb_f_fs]()
[  122.362292] Modules linked in:
[  122.362555] CPU: 2 PID: 2384 Comm: adbd Tainted: G        W       4.1.0-0.rc4.git0.1.1.fc22.i686 #1
[  122.362561] Hardware name: To be filled by O.E.M. To be filled by O.E.M./Aptio CRB, BIOS 5.6.5 07/25/2014
[  122.362567]  c0d1f947 415badfa 00000000 d1029e64 c0a86e54 00000000 d1029e94 c045b937
[  122.362584]  c0c37f94 00000002 00000950 f9b313d4 00000d59 f9b2ebf0 f9b2ebf0 fffffff0
[  122.362600]  00000003 deb53d00 d1029ea4 c045ba42 00000009 00000000 d1029f08 f9b2ebf0
[  122.362617] Call Trace:
[  122.362633]  [&lt;c0a86e54&gt;] dump_stack+0x41/0x52
[  122.362645]  [&lt;c045b937&gt;] warn_slowpath_common+0x87/0xc0
[  122.362658]  [&lt;f9b2ebf0&gt;] ? ffs_ep0_write+0x730/0x810 [usb_f_fs]
[  122.362668]  [&lt;f9b2ebf0&gt;] ? ffs_ep0_write+0x730/0x810 [usb_f_fs]
[  122.362678]  [&lt;c045ba42&gt;] warn_slowpath_null+0x22/0x30
[  122.362689]  [&lt;f9b2ebf0&gt;] ffs_ep0_write+0x730/0x810 [usb_f_fs]
[  122.362702]  [&lt;f9b2e4c0&gt;] ? ffs_ep0_read+0x380/0x380 [usb_f_fs]
[  122.362712]  [&lt;c05a1c1f&gt;] __vfs_write+0x2f/0x100
[  122.362722]  [&lt;c05a42f2&gt;] ? __sb_start_write+0x52/0x110
[  122.362731]  [&lt;c05a2534&gt;] vfs_write+0x94/0x1b0
[  122.362740]  [&lt;c0a8a1c0&gt;] ? mutex_lock+0x10/0x30
[  122.362749]  [&lt;c05a2f41&gt;] SyS_write+0x51/0xb0
[  122.362759]  [&lt;c0a8c71f&gt;] sysenter_do_call+0x12/0x12
[  122.362766] ---[ end trace 0673d3467cecf8db ]---

in some cases (reproduction path below). This commit get back
semantic of that flag and ensures that ffs_closed() is called
always when needed but ffs_closed_callback() is called only
if this flag is set.

Reproduction path:
Compile kernel without any UDC driver or bound some gadget
to existing one and then:

$ modprobe g_ffs
$ mount none -t functionfs mount_point
$ ffs-example mount_point

This will fail with -ENODEV as there is no udc.

$ ffs-example mount_point

This will fail with -EBUSY because ffs_data has not been
properly cleaned up.

Signed-off-by: Krzysztof Opasiak &lt;k.opasiak@samsung.com&gt;
Signed-off-by: Felipe Balbi &lt;balbi@ti.com&gt;
</content>
</entry>
<entry>
<title>usb: gadget: g_ffs: Fix counting of missing_functions</title>
<updated>2015-05-26T15:15:08Z</updated>
<author>
<name>Krzysztof Opasiak</name>
<email>k.opasiak@samsung.com</email>
</author>
<published>2015-05-22T15:25:17Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=c41b33c58d11f32e95d06f634ddba0cbf39fc7c6'/>
<id>urn:sha1:c41b33c58d11f32e95d06f634ddba0cbf39fc7c6</id>
<content type='text'>
Returning non-zero value from ready callback makes ffs instance
return error from writing strings and enter FFS_CLOSING state.
This means that this this function is not truly ready and
close callback will not be called. This commit fix
ffs_ready_callback() to undo all side effects of this function
in case of error.

Signed-off-by: Krzysztof Opasiak &lt;k.opasiak@samsung.com&gt;
Signed-off-by: Felipe Balbi &lt;balbi@ti.com&gt;
</content>
</entry>
</feed>
