<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/linux.git/drivers/usb/dwc2, branch v4.11.5</title>
<subtitle>Linux kernel stable tree (mirror)</subtitle>
<id>https://git.radix-linux.su/kernel/linux.git/atom?h=v4.11.5</id>
<link rel='self' href='https://git.radix-linux.su/kernel/linux.git/atom?h=v4.11.5'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/'/>
<updated>2017-01-26T14:36:28+00:00</updated>
<entry>
<title>Merge tag 'usb-for-v4.11' of git://git.kernel.org/pub/scm/linux/kernel/git/balbi/usb into usb-next</title>
<updated>2017-01-26T14:36:28+00:00</updated>
<author>
<name>Greg Kroah-Hartman</name>
<email>gregkh@linuxfoundation.org</email>
</author>
<published>2017-01-26T14:36:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=bc46e23c34259c842a138f10acc371e4e2cdb287'/>
<id>urn:sha1:bc46e23c34259c842a138f10acc371e4e2cdb287</id>
<content type='text'>
Felipe writes:

USB: changes for v4.11

Here's the big pull request for the Gadget
API. Again the majority of changes sit in dwc2
driver. Most important changes contain a workaround
for GOTGCTL being wrong, a sleep-inside-spinlock fix
and the big series of cleanups on dwc2.

One important thing on dwc3 is that we don't anymore
need gadget drivers to cope with unaligned OUT
transfers for us. We have support for appending one
extra chained TRB to align transfer ourselves.

Apart from these, the usual set of typos,
non-critical fixes, etc.
</content>
</entry>
<entry>
<title>usb: dwc2: eliminate irq parameter from dwc2_hcd_init</title>
<updated>2017-01-26T08:52:01+00:00</updated>
<author>
<name>Heiner Kallweit</name>
<email>hkallweit1@gmail.com</email>
</author>
<published>2017-01-25T22:13:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=4fe160d51e4226a80f81b3d9b5193e0b8d2ebcbd'/>
<id>urn:sha1:4fe160d51e4226a80f81b3d9b5193e0b8d2ebcbd</id>
<content type='text'>
The irq is available in hsotg already, so there's no need to
pass it as separate function parameter.

Acked-by: John Youn &lt;johnyoun@synopsys.com&gt;
Signed-off-by: Heiner Kallweit &lt;hkallweit1@gmail.com&gt;
Signed-off-by: Felipe Balbi &lt;felipe.balbi@linux.intel.com&gt;
</content>
</entry>
<entry>
<title>usb: dwc2: fix "iomem 0x00000000" message</title>
<updated>2017-01-26T08:51:35+00:00</updated>
<author>
<name>Heiner Kallweit</name>
<email>hkallweit1@gmail.com</email>
</author>
<published>2017-01-25T22:10:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=348becdcc3196addbe882e8a10451744e489e389'/>
<id>urn:sha1:348becdcc3196addbe882e8a10451744e489e389</id>
<content type='text'>
Set the iomem parameters in the usb_hcd to fix this misleading
message during driver load:
dwc2 c9100000.usb: irq 22, io mem 0x00000000

Acked-by: John Youn &lt;johnyoun@synopsys.com&gt;
Signed-off-by: Heiner Kallweit &lt;hkallweit1@gmail.com&gt;
Signed-off-by: Felipe Balbi &lt;felipe.balbi@linux.intel.com&gt;
</content>
</entry>
<entry>
<title>usb: dwc2: gadget: Add checking for g-tx-fifo-size parameter</title>
<updated>2017-01-24T14:19:11+00:00</updated>
<author>
<name>Sevak Arakelyan</name>
<email>sevaka@synopsys.com</email>
</author>
<published>2017-01-23T23:01:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=3c6aea7344c363f298bfb9952e2906b9574f59dc'/>
<id>urn:sha1:3c6aea7344c363f298bfb9952e2906b9574f59dc</id>
<content type='text'>
Add dwc2_check_param_tx_fifo_sizes function which validates
the members of g_tx_fifo_size array and sets to average or
default values if it is needed.

Cc: Stefan Wahren &lt;stefan.wahren@i2se.com&gt;
Signed-off-by: Sevak Arakelyan &lt;sevaka@synopsys.com&gt;
Signed-off-by: John Youn &lt;johnyoun@synopsys.com&gt;
Signed-off-by: Felipe Balbi &lt;felipe.balbi@linux.intel.com&gt;
</content>
</entry>
<entry>
<title>usb: dwc2: gadget: Set TX FIFO depths to calculated defaults</title>
<updated>2017-01-24T14:19:11+00:00</updated>
<author>
<name>Sevak Arakelyan</name>
<email>sevaka@synopsys.com</email>
</author>
<published>2017-01-23T23:01:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=c138ecfa6108edee17fabfa56285b00f66641659'/>
<id>urn:sha1:c138ecfa6108edee17fabfa56285b00f66641659</id>
<content type='text'>
Remove legacy DWC2_G_P_LEGACY_TX_FIFO_SIZE array for TX FIFOs.
Update dwc2_set_param_tx_fifo_sizes function to calculate
and assign default average FIFO depth to each member of
g_tx_fifo_size array. Total FIFO size, EP Info block's size,
FIFO operation mode and device operation mode are taken into
consideration during the calculation.

Cc: Stefan Wahren &lt;stefan.wahren@i2se.com&gt;
Signed-off-by: Sevak Arakelyan &lt;sevaka@synopsys.com&gt;
Signed-off-by: John Youn &lt;johnyoun@synopsys.com&gt;
Signed-off-by: Felipe Balbi &lt;felipe.balbi@linux.intel.com&gt;
</content>
</entry>
<entry>
<title>usb: dwc2: host: Correct snpsid checking for GDFIFOCFG</title>
<updated>2017-01-24T14:19:10+00:00</updated>
<author>
<name>Sevak Arakelyan</name>
<email>sevaka@synopsys.com</email>
</author>
<published>2017-01-23T23:01:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=e1f411d1b3db49a2089f47087410dcfec6564e28'/>
<id>urn:sha1:e1f411d1b3db49a2089f47087410dcfec6564e28</id>
<content type='text'>
GDFIFOCFG is available from IP version 2.91a. Fix the code to reflect
this.

Signed-off-by: Sevak Arakelyan &lt;sevaka@synopsys.com&gt;
Signed-off-by: John Youn &lt;johnyoun@synopsys.com&gt;
Signed-off-by: Felipe Balbi &lt;felipe.balbi@linux.intel.com&gt;
</content>
</entry>
<entry>
<title>usb: dwc2: host: use msleep() for long delay</title>
<updated>2017-01-24T14:19:10+00:00</updated>
<author>
<name>Nicholas Mc Guire</name>
<email>hofrat@osadl.org</email>
</author>
<published>2017-01-23T23:00:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=d3fe81d2ccc41b355e494413115c0c7c18426fa1'/>
<id>urn:sha1:d3fe81d2ccc41b355e494413115c0c7c18426fa1</id>
<content type='text'>
ulseep_range() uses hrtimers and provides no advantage over msleep()
for larger delays. Fix up the 100ms delays here passing the adjusted "min"
value to msleep(). This helps reduce the load on the hrtimer subsystem.

Link: http://lkml.org/lkml/2017/1/11/377
Fixes: commit 2938fc63e0c2 ("usb: dwc2: Properly account for the force mode delays")
Signed-off-by: Nicholas Mc Guire &lt;hofrat@osadl.org&gt;
Signed-off-by: John Youn &lt;johnyoun@synopsys.com&gt;
Signed-off-by: Felipe Balbi &lt;felipe.balbi@linux.intel.com&gt;
</content>
</entry>
<entry>
<title>usb: dwc2: Add a quirk to allow speed negotiation for Hisilicon Hi6220</title>
<updated>2017-01-24T14:19:10+00:00</updated>
<author>
<name>Chen Yu</name>
<email>chenyu56@huawei.com</email>
</author>
<published>2017-01-23T23:00:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=ca8b03324877e1804161fd4e0100d49f03ad9fce'/>
<id>urn:sha1:ca8b03324877e1804161fd4e0100d49f03ad9fce</id>
<content type='text'>
The Hi6220's usb controller is limited in that it does not
support "Split Transactions", so it does not support communicating
with low-speed and full-speed devices behind a high-speed hub.

Thus it requires a quirk so that we can manually drop the usb
speed when low/full-speed are attached, and bump back to high
speed when they are removed.

Cc: Wei Xu &lt;xuwei5@hisilicon.com&gt;
Cc: Guodong Xu &lt;guodong.xu@linaro.org&gt;
Cc: Amit Pundir &lt;amit.pundir@linaro.org&gt;
Cc: Rob Herring &lt;robh+dt@kernel.org&gt;
Cc: John Youn &lt;johnyoun@synopsys.com&gt;
Cc: Douglas Anderson &lt;dianders@chromium.org&gt;
Cc: Chen Yu &lt;chenyu56@huawei.com&gt;
Cc: Vardan Mikayelyan &lt;mvardan@synopsys.com&gt;
Cc: Kishon Vijay Abraham I &lt;kishon@ti.com&gt;
Cc: Felipe Balbi &lt;felipe.balbi@linux.intel.com&gt;
Cc: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
Cc: linux-usb@vger.kernel.org
Signed-off-by: Chen Yu &lt;chenyu56@huawei.com&gt;
[jstultz: Reworked to simplify the patch, and made
 commit log to be more specific about the issue]
Signed-off-by: John Stultz &lt;john.stultz@linaro.org&gt;
Signed-off-by: John Youn &lt;johnyoun@synopsys.com&gt;
Signed-off-by: Felipe Balbi &lt;felipe.balbi@linux.intel.com&gt;
</content>
</entry>
<entry>
<title>usb: dwc2: Force port resume on switching to device mode</title>
<updated>2017-01-24T14:19:09+00:00</updated>
<author>
<name>Chen Yu</name>
<email>chenyu56@huawei.com</email>
</author>
<published>2017-01-23T22:59:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=9156a7ef1c3ba482f85f2733edcde2b10189de8c'/>
<id>urn:sha1:9156a7ef1c3ba482f85f2733edcde2b10189de8c</id>
<content type='text'>
We've seen failures when switching between host and gadget mode,
which was diagnosed as being caused due to the bus being
auto-suspended when we switched.

So this patch forces a port resume when switching to device
mode if the bus is suspended.

Cc: Wei Xu &lt;xuwei5@hisilicon.com&gt;
Cc: Guodong Xu &lt;guodong.xu@linaro.org&gt;
Cc: Amit Pundir &lt;amit.pundir@linaro.org&gt;
Cc: Rob Herring &lt;robh+dt@kernel.org&gt;
Cc: John Youn &lt;johnyoun@synopsys.com&gt;
Cc: Douglas Anderson &lt;dianders@chromium.org&gt;
Cc: Chen Yu &lt;chenyu56@huawei.com&gt;
Cc: Vardan Mikayelyan &lt;mvardan@synopsys.com&gt;
Cc: Kishon Vijay Abraham I &lt;kishon@ti.com&gt;
Cc: Felipe Balbi &lt;felipe.balbi@linux.intel.com&gt;
Cc: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
Cc: linux-usb@vger.kernel.org
Signed-off-by: Chen Yu &lt;chenyu56@huawei.com&gt;
Signed-off-by: John Stultz &lt;john.stultz@linaro.org&gt;
Signed-off-by: John Youn &lt;johnyoun@synopsys.com&gt;
Signed-off-by: Felipe Balbi &lt;felipe.balbi@linux.intel.com&gt;
</content>
</entry>
<entry>
<title>usb: dwc2: Workaround case where GOTGCTL state is wrong</title>
<updated>2017-01-24T14:19:09+00:00</updated>
<author>
<name>John Stultz</name>
<email>john.stultz@linaro.org</email>
</author>
<published>2017-01-23T22:59:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=fc30c4bb44a3665edcc76bd7af93f009bc9dc672'/>
<id>urn:sha1:fc30c4bb44a3665edcc76bd7af93f009bc9dc672</id>
<content type='text'>
When removing a USB-A to USB-otg adapter cable, we get a change status
irq, and then in dwc2_conn_id_status_change, we erroneously see the
GOTGCTL_CONID_B flag set. This causes us to get stuck in the
"while (!dwc2_is_device_mode(hsotg))" loop, spitting out "Waiting for
Peripheral Mode, Mode=Host" warnings until it fails out many seconds
later.

This patch works around the issue by re-reading the GOTGCTL state to
check if the GOTGCTL_CONID_B is still set and if not restarting the
change status logic.

Cc: Wei Xu &lt;xuwei5@hisilicon.com&gt;
Cc: Guodong Xu &lt;guodong.xu@linaro.org&gt;
Cc: Amit Pundir &lt;amit.pundir@linaro.org&gt;
Cc: Rob Herring &lt;robh+dt@kernel.org&gt;
Cc: John Youn &lt;johnyoun@synopsys.com&gt;
Cc: Douglas Anderson &lt;dianders@chromium.org&gt;
Cc: Chen Yu &lt;chenyu56@huawei.com&gt;
Cc: Vardan Mikayelyan &lt;mvardan@synopsys.com&gt;
Cc: Kishon Vijay Abraham I &lt;kishon@ti.com&gt;
Cc: Felipe Balbi &lt;felipe.balbi@linux.intel.com&gt;
Cc: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
Cc: linux-usb@vger.kernel.org
Reviewed-by: Vardan Mikayelyan &lt;mvardan@synopsys.com&gt;
Signed-off-by: John Stultz &lt;john.stultz@linaro.org&gt;
Signed-off-by: John Youn &lt;johnyoun@synopsys.com&gt;
Signed-off-by: Felipe Balbi &lt;felipe.balbi@linux.intel.com&gt;
</content>
</entry>
</feed>
