<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/usb/dwc3, branch linux-3.8.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.8.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.8.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2013-03-20T20:10:52Z</updated>
<entry>
<title>usb: dwc3: core: don't forget to free coherent memory</title>
<updated>2013-03-20T20:10:52Z</updated>
<author>
<name>Felipe Balbi</name>
</author>
<published>2013-02-08T13:14:16Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=d6539025b73f46c486c6c06f87b778ab3e93e8f8'/>
<id>urn:sha1:d6539025b73f46c486c6c06f87b778ab3e93e8f8</id>
<content type='text'>
commit d9b4330adec006c2e8907bdcacd9dcc0e8874d18 upstream.

commit 3921426 (usb: dwc3: core: move
event buffer allocation out of
dwc3_core_init()) introduced a memory leak
of the coherent memory we use as event
buffers on dwc3 driver.

If the driver is compiled as a dynamically
loadable module and use constantly loads
and unloads the driver, we will continue
to leak the coherent memory allocated during
-&gt;probe() because dwc3_free_event_buffers()
is never called during -&gt;remove().

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: dwc3: gadget: change HIRD threshold to 12</title>
<updated>2013-03-03T22:03:33Z</updated>
<author>
<name>Felipe Balbi</name>
</author>
<published>2013-01-24T09:56:11Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e3d7ed9c659eebbf83fc20e8c80bb3c58a24028d'/>
<id>urn:sha1:e3d7ed9c659eebbf83fc20e8c80bb3c58a24028d</id>
<content type='text'>
commit 1a947746dbe1486d0e305ab512ddf085b7874cb3 upstream.

First of all, that 28 value makes no sense as
HIRD threshold is a 4-bit value, second of all
it's causing issues for OMAP5.

Using 12 because commit cbc725b3 (usb: dwc3:
keep default hird threshold value as 4b1100)
had the intention of setting the maximum allowed
value of 0xc.

Also, original code has been wrong forever, so
this should be backported as far back as
possible.

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: dwc3: gadget: fix skip LINK_TRB on ISOC</title>
<updated>2013-03-03T22:03:32Z</updated>
<author>
<name>Pratyush Anand</name>
</author>
<published>2013-01-14T10:29:35Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=d7c430bd3285dcdbdbe3c0d71a42b6fde442733e'/>
<id>urn:sha1:d7c430bd3285dcdbdbe3c0d71a42b6fde442733e</id>
<content type='text'>
commit 915e202aeeb59e272992a6364c910aaef3073544 upstream.

When we reach to link trb, we just need to increase free_slot and then
calculate TRB. Return is not correct, as it will cause wrong TRB DMA
address to fetch in case of update transfer.

Signed-off-by: Pratyush Anand &lt;pratyush.anand@st.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: dwc3: gadget: fix isoc END TRANSFER Condition</title>
<updated>2013-03-03T22:03:32Z</updated>
<author>
<name>Pratyush Anand</name>
</author>
<published>2013-01-14T10:29:34Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=3f08ff607d29c29c63e90bc650356aa476e5054d'/>
<id>urn:sha1:3f08ff607d29c29c63e90bc650356aa476e5054d</id>
<content type='text'>
commit cdc359dd87ab6c39a67dab724fd0b61c16e6f08b upstream.

There were still some corner cases where isoc transfer was not able to
restart, specially when missed isoc does not happen , and in fact gadget does
not queue any new request during giveback.

Cleanup function calls giveback first, which provides a way to queue
another request to gadget. But gadget did not had any data. So , it did
not call ep_queue. To twist it further, gadget did not queue till
cleanup for last queued TRB is called. If we ever reach this scenario,
we must call END TRANSFER, so that we receive a new  xfernotready with
information about current microframe number.

Also insure that there is no request submitted to core when issuing END
TRANSFER.

Signed-off-by: Pratyush Anand &lt;pratyush.anand@st.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: dwc3: gadget: fix missed isoc</title>
<updated>2013-03-03T22:03:32Z</updated>
<author>
<name>Pratyush Anand</name>
</author>
<published>2013-01-14T10:29:32Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=2f097fdb6b0d09084143d38fc43db86937610324'/>
<id>urn:sha1:2f097fdb6b0d09084143d38fc43db86937610324</id>
<content type='text'>
commit 7efea86c2868b8fd9df65e589e33aebe498ce21d upstream.

There are two reasons to generate missed isoc.

1. when the host does not poll for all the data.
2. because of application-side delays that prevent all the data from
being transferred in programmed microframe.

Current code was able to handle first case only.  This patch handles
scenario 2 as well.Scenario 2 sometime may occur with complex gadget
application, however it can be easily reproduced for testing purpose as
follows:

a. use isoc binterval as 1 in f_sourcesink.
b. use pattern=0
c. introduce a delay of 150us deliberately in source_sink_complete, so
that after few frames it lands into scenario 2.
d. now run testusb 16 (isoc in  test). You will notice that if this
patch is not applied then isoc transfer is not able to recover after
first missed.

Current patch's approach is as under:

If missed isoc occurs and there is no request queued then issue END
TRANSFER, so that core generates next xfernotready and we will issue a
fresh START TRANSFER.
If there are still queued request then wait, do not issue either END or
UPDATE TRANSFER, just attach next request in request_list during giveback.
If any future queued request is successfully transferred then we will issue
UPDATE TRANSFER for all request in the request_list.

Signed-off-by: Pratyush Anand &lt;pratyush.anand@st.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: dwc3: Enable usb2 LPM only when connected as usb2.0</title>
<updated>2013-03-03T22:03:32Z</updated>
<author>
<name>Pratyush Anand</name>
</author>
<published>2013-01-14T10:29:31Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=d1e2a92b95b9cf0e76a5b65282e313acdc3de2b2'/>
<id>urn:sha1:d1e2a92b95b9cf0e76a5b65282e313acdc3de2b2</id>
<content type='text'>
commit 2b758350af19db9a5c98241cf222c2e211d7a912 upstream.

Synopsys says:
The HIRD Threshold field must be set to ‘0’ when the device core is
operating in super speed mode.

This patch implements above statement.

Acked-by: Paul Zimmerman &lt;paulz@synopsys.com&gt;
Signed-off-by: Pratyush Anand &lt;pratyush.anand@st.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: dwc3: gadget: fix ep-&gt;maxburst for ep0</title>
<updated>2013-01-18T12:11:00Z</updated>
<author>
<name>Pratyush Anand</name>
</author>
<published>2013-01-18T11:23:56Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=6048e4c69d80600baba35856651056860d5d8f5a'/>
<id>urn:sha1:6048e4c69d80600baba35856651056860d5d8f5a</id>
<content type='text'>
dwc3_gadget_set_ep_config expects maxburst as incremented by 1. So, by
default initialize ep-&gt;maxburst to 1 for ep0.

Cc: &lt;stable@vger.kernel.org&gt;
Signed-off-by: Pratyush Anand &lt;pratyush.anand@st.com&gt;
Signed-off-by: Felipe Balbi &lt;balbi@ti.com&gt;
</content>
</entry>
<entry>
<title>usb: dwc3: debugfs: fix regdump offset</title>
<updated>2012-12-13T09:58:38Z</updated>
<author>
<name>Jack Pham</name>
</author>
<published>2012-12-10T22:28:13Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=1604c1e760119ab3fe9f71679ebaeb058d3d8ae1'/>
<id>urn:sha1:1604c1e760119ab3fe9f71679ebaeb058d3d8ae1</id>
<content type='text'>
As with dwc_readl/writel, the global registers are specified as
offsets starting from the beginning of the xHCI address space,
but the memory region pointed to by dwc-&gt;regs already maps to
the start of the global addresses. Fix by offsetting each of the
regs relative to DWC3_GLOBALS_REGS_START.

Signed-off-by: Jack Pham &lt;jackp@codeaurora.org&gt;
Signed-off-by: Felipe Balbi &lt;balbi@ti.com&gt;
</content>
</entry>
<entry>
<title>usb: remove use of __devexit</title>
<updated>2012-11-21T21:27:17Z</updated>
<author>
<name>Bill Pemberton</name>
</author>
<published>2012-11-19T18:26:20Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=fb4e98ab63433c4d3a1588ea91c73f1cd7ebaa00'/>
<id>urn:sha1:fb4e98ab63433c4d3a1588ea91c73f1cd7ebaa00</id>
<content type='text'>
CONFIG_HOTPLUG is going away as an option so __devexit is no
longer needed.

Signed-off-by: Bill Pemberton &lt;wfp5p@virginia.edu&gt;
Cc: Peter Korsgaard &lt;jacmet@sunsite.dk&gt;
Cc: Alexander Shishkin &lt;alexander.shishkin@linux.intel.com&gt;
Acked-by: Felipe Balbi &lt;balbi@ti.com&gt;
Cc: Li Yang &lt;leoli@freescale.com&gt;
Cc: Alan Stern &lt;stern@rowland.harvard.edu&gt;
Cc: Wan ZongShun &lt;mcuos.com@gmail.com&gt;
Cc: Ben Dooks &lt;ben-linux@fluff.org&gt;
Cc: Kukjin Kim &lt;kgene.kim@samsung.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>usb: remove use of __devinit</title>
<updated>2012-11-21T21:27:16Z</updated>
<author>
<name>Bill Pemberton</name>
</author>
<published>2012-11-19T18:21:48Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=41ac7b3ab7fe1d6175839947a877fdf95cbd2211'/>
<id>urn:sha1:41ac7b3ab7fe1d6175839947a877fdf95cbd2211</id>
<content type='text'>
CONFIG_HOTPLUG is going away as an option so __devinit is no longer
needed.

Signed-off-by: Bill Pemberton &lt;wfp5p@virginia.edu&gt;
Cc: Peter Korsgaard &lt;jacmet@sunsite.dk&gt;
Cc: Alexander Shishkin &lt;alexander.shishkin@linux.intel.com&gt;
Acked-by: Felipe Balbi &lt;balbi@ti.com&gt;
Cc: Li Yang &lt;leoli@freescale.com&gt;
Acked-by: Alan Stern &lt;stern@rowland.harvard.edu&gt;
Cc: Geoff Levand &lt;geoff@infradead.org&gt;
Cc: Wan ZongShun &lt;mcuos.com@gmail.com&gt;
Cc: Olav Kongas &lt;ok@artecdesign.ee&gt;
Cc: Lennert Buytenhek &lt;kernel@wantstofly.org&gt;
Cc: Ben Dooks &lt;ben-linux@fluff.org&gt;
Cc: Kukjin Kim &lt;kgene.kim@samsung.com&gt;
Acked-by: Nicolas Ferre &lt;nicolas.ferre@atmel.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
</feed>
