<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-toradex.git/drivers/usb, branch tegra-9.12.11</title>
<subtitle>Linux kernel for Apalis and Colibri modules</subtitle>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/'/>
<entry>
<title>fsl udc: Fix cable connect/disconnect checking</title>
<updated>2010-05-07T15:57:52+00:00</updated>
<author>
<name>Venkat Moganty</name>
<email>vmoganty@nvidia.com</email>
</author>
<published>2010-05-05T16:48:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=a8d0003fdd82dedd80e724b33605121672f5f988'/>
<id>a8d0003fdd82dedd80e724b33605121672f5f988</id>
<content type='text'>
On VBUS interrupt irq acknowledges the VBUS interrupt and schedules the work
thread for powering/up down the USB phy and clocks based on the VBUS status.
But, in the work thread instead of checking the VBUS status directly,
rechecking the interrupt status which is already disabled. This is fixed by
checking the vbus status only in the work thread for controlling the power
up/down sequence. Due to the disconnect problem power numbers increased when
there is no USB cable connected to the system.

Bug 682756
Bug 682727

Change-Id: Id1c5b3cd1f2f195c4dfadf397e1f8650bf9da12b
Reviewed-on: http://git-master/r/1300
Reviewed-by: Gary King &lt;gking@nvidia.com&gt;
Tested-by: Gary King &lt;gking@nvidia.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
On VBUS interrupt irq acknowledges the VBUS interrupt and schedules the work
thread for powering/up down the USB phy and clocks based on the VBUS status.
But, in the work thread instead of checking the VBUS status directly,
rechecking the interrupt status which is already disabled. This is fixed by
checking the vbus status only in the work thread for controlling the power
up/down sequence. Due to the disconnect problem power numbers increased when
there is no USB cable connected to the system.

Bug 682756
Bug 682727

Change-Id: Id1c5b3cd1f2f195c4dfadf397e1f8650bf9da12b
Reviewed-on: http://git-master/r/1300
Reviewed-by: Gary King &lt;gking@nvidia.com&gt;
Tested-by: Gary King &lt;gking@nvidia.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>tegra usb:Modifications to usb power up/down sequence</title>
<updated>2010-05-03T00:58:43+00:00</updated>
<author>
<name>Venkat Moganty</name>
<email>vmoganty@nvidia.com</email>
</author>
<published>2010-04-29T15:14:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=1b8406f6f9556f8d205ebf01035350e587c11764'/>
<id>1b8406f6f9556f8d205ebf01035350e587c11764</id>
<content type='text'>
Removed helper thread and replaced it with Worker Queues in udc and ehci
drivers to handle usbphy power up/down sequence. Made changes to turn off
usb power rail based on vbus detection mechanism is selected as PMU.
Fixed usb host LP0 exit sequence.

Bug 667912: AVDD_USB_Power is consuming 3.82mW of power in OSIdle and ULP
audio playback case.

Change-Id: I3a77d0ecb4f0b81dafe705100451c42641f0bfb9
Reviewed-on: http://git-master/r/1221
Tested-by: Hanumanth Venkateswa Moganty &lt;vmoganty@nvidia.com&gt;
Tested-by: Dara Ramesh &lt;dramesh@nvidia.com&gt;
Reviewed-by: Seshendra Gadagottu &lt;sgadagottu@nvidia.com&gt;
Tested-by: Seshendra Gadagottu &lt;sgadagottu@nvidia.com&gt;
Reviewed-by: Narendra Damahe &lt;ndamahe@nvidia.com&gt;
Tested-by: Narendra Damahe &lt;ndamahe@nvidia.com&gt;
Reviewed-by: Yu-Huan Hsu &lt;yhsu@nvidia.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Removed helper thread and replaced it with Worker Queues in udc and ehci
drivers to handle usbphy power up/down sequence. Made changes to turn off
usb power rail based on vbus detection mechanism is selected as PMU.
Fixed usb host LP0 exit sequence.

Bug 667912: AVDD_USB_Power is consuming 3.82mW of power in OSIdle and ULP
audio playback case.

Change-Id: I3a77d0ecb4f0b81dafe705100451c42641f0bfb9
Reviewed-on: http://git-master/r/1221
Tested-by: Hanumanth Venkateswa Moganty &lt;vmoganty@nvidia.com&gt;
Tested-by: Dara Ramesh &lt;dramesh@nvidia.com&gt;
Reviewed-by: Seshendra Gadagottu &lt;sgadagottu@nvidia.com&gt;
Tested-by: Seshendra Gadagottu &lt;sgadagottu@nvidia.com&gt;
Reviewed-by: Narendra Damahe &lt;ndamahe@nvidia.com&gt;
Tested-by: Narendra Damahe &lt;ndamahe@nvidia.com&gt;
Reviewed-by: Yu-Huan Hsu &lt;yhsu@nvidia.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>fsl-udc:Fix USB1 resume after LP0</title>
<updated>2010-04-21T21:22:24+00:00</updated>
<author>
<name>Venkat Moganty</name>
<email>vmoganty@nvidia.com</email>
</author>
<published>2010-04-21T14:27:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=c8902bbab78d5db92547ee9c2e5aa4c91530e304'/>
<id>c8902bbab78d5db92547ee9c2e5aa4c91530e304</id>
<content type='text'>
USB1 registers are set to default values after entering into the LP0.
On LP0 resume, controller was not programmed properly, which is causing
device to fail enumeration. This is fixed by reinitializing the controller
on LP0 resume.

Bug 677511: USB1 fails to enumerate after LP0
Tested on android/whistler/adb, USB device is working fine on resume from LP0.

Change-Id: I55af61b23bec3436d1672e8c58aee8d7b8f6bcb3
Reviewed-on: http://git-master/r/1175
Reviewed-by: Ramachandrudu Kandhala &lt;rkandhala@nvidia.com&gt;
Tested-by: Ramachandrudu Kandhala &lt;rkandhala@nvidia.com&gt;
Reviewed-by: Narendra Damahe &lt;ndamahe@nvidia.com&gt;
Tested-by: Narendra Damahe &lt;ndamahe@nvidia.com&gt;
Reviewed-by: Gary King &lt;gking@nvidia.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
USB1 registers are set to default values after entering into the LP0.
On LP0 resume, controller was not programmed properly, which is causing
device to fail enumeration. This is fixed by reinitializing the controller
on LP0 resume.

Bug 677511: USB1 fails to enumerate after LP0
Tested on android/whistler/adb, USB device is working fine on resume from LP0.

Change-Id: I55af61b23bec3436d1672e8c58aee8d7b8f6bcb3
Reviewed-on: http://git-master/r/1175
Reviewed-by: Ramachandrudu Kandhala &lt;rkandhala@nvidia.com&gt;
Tested-by: Ramachandrudu Kandhala &lt;rkandhala@nvidia.com&gt;
Reviewed-by: Narendra Damahe &lt;ndamahe@nvidia.com&gt;
Tested-by: Narendra Damahe &lt;ndamahe@nvidia.com&gt;
Reviewed-by: Gary King &lt;gking@nvidia.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>fsl udc:Fix USB disconnect notification in OTG</title>
<updated>2010-04-15T21:06:37+00:00</updated>
<author>
<name>Venkat Moganty</name>
<email>vmoganty@nvidia.com</email>
</author>
<published>2010-04-15T05:36:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=111d4f4aa9a176187a00ec619481bcbab1eeb1c0'/>
<id>111d4f4aa9a176187a00ec619481bcbab1eeb1c0</id>
<content type='text'>
In OTG mode, when USB cable is removed cable disconnect notification is not
sent to the client driver. Hence at application layer, UI shows up USB cable
connection notification even USB cable is removed.
With this fix disconnect notification is going to the client driver and
UI removes the USB notification on USB cable removal.

Tested on android/whistler

Bug 668692: USB cable is removed, but does not appear in notification.

Change-Id: I06d5a288873a2a8d7d109c5109b9dfd0c08fd1ee
Reviewed-on: http://git-master/r/1112
Reviewed-by: Gary King &lt;gking@nvidia.com&gt;
Tested-by: Gary King &lt;gking@nvidia.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
In OTG mode, when USB cable is removed cable disconnect notification is not
sent to the client driver. Hence at application layer, UI shows up USB cable
connection notification even USB cable is removed.
With this fix disconnect notification is going to the client driver and
UI removes the USB notification on USB cable removal.

Tested on android/whistler

Bug 668692: USB cable is removed, but does not appear in notification.

Change-Id: I06d5a288873a2a8d7d109c5109b9dfd0c08fd1ee
Reviewed-on: http://git-master/r/1112
Reviewed-by: Gary King &lt;gking@nvidia.com&gt;
Tested-by: Gary King &lt;gking@nvidia.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>usb gadget: Implementing checks to fix NULL pointer dereference exception</title>
<updated>2010-04-15T01:10:35+00:00</updated>
<author>
<name>Abhishek Aggarwal</name>
<email>aaggarwal@nvidia.com</email>
</author>
<published>2010-04-14T06:10:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=15dd321ef1de7508952438128b4138927c48dd25'/>
<id>15dd321ef1de7508952438128b4138927c48dd25</id>
<content type='text'>
In LDK, no gadget driver gets registered with the udc driver and thus
udc-&gt;driver is not initialized and is NULL. Accessing members of
udc-&gt;driver in the execution path of fsl_udc_irq() results in NULL
pointer dereference exception.

Fixing it by implementing NULL value checks for udc-&gt;driver at
appropriate places.

Bug 671801: [Mobile LDK\Harmony] wake up from LP1 freezes the device
Bug 671807: [Mobile LDK\Harmony\LP1] Wake-up by USB mini-b cable is not
working

Change-Id: I502ad8b4ba804bc82ec95af739e71ccfb11493d7
Reviewed-on: http://git-master/r/1110
Tested-by: Abhishek Aggarwal &lt;aaggarwal@nvidia.com&gt;
Reviewed-by: Hanumanth Venkateswa Moganty &lt;vmoganty@nvidia.com&gt;
Tested-by: Hanumanth Venkateswa Moganty &lt;vmoganty@nvidia.com&gt;
Reviewed-by: Gary King &lt;gking@nvidia.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
In LDK, no gadget driver gets registered with the udc driver and thus
udc-&gt;driver is not initialized and is NULL. Accessing members of
udc-&gt;driver in the execution path of fsl_udc_irq() results in NULL
pointer dereference exception.

Fixing it by implementing NULL value checks for udc-&gt;driver at
appropriate places.

Bug 671801: [Mobile LDK\Harmony] wake up from LP1 freezes the device
Bug 671807: [Mobile LDK\Harmony\LP1] Wake-up by USB mini-b cable is not
working

Change-Id: I502ad8b4ba804bc82ec95af739e71ccfb11493d7
Reviewed-on: http://git-master/r/1110
Tested-by: Abhishek Aggarwal &lt;aaggarwal@nvidia.com&gt;
Reviewed-by: Hanumanth Venkateswa Moganty &lt;vmoganty@nvidia.com&gt;
Tested-by: Hanumanth Venkateswa Moganty &lt;vmoganty@nvidia.com&gt;
Reviewed-by: Gary King &lt;gking@nvidia.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>tegra usb: Switching of USB busy hints, when no active USB tranfers</title>
<updated>2010-03-21T17:33:01+00:00</updated>
<author>
<name>sgadagottu</name>
<email>sgadagottu@nvidia.com</email>
</author>
<published>2010-03-19T20:27:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=873a30edbac4017af82525c1e2385d2b743f436e'/>
<id>873a30edbac4017af82525c1e2385d2b743f436e</id>
<content type='text'>
           are happening though a device connection on host port.

Currently for harmony, an intergrated SMSC hub present on USB3. Because
of this device connection is present on USB3 and USB power busy hints
are always on. To avoid this, for host by default busy hints are off and
USB busy hints will be on for :
1.Bulk and isochronus transfers
2.Interrupts transfers with buffer length &gt;= 256.
Busy hint will be on for pre-defined amount of time
and after that busy hints will be off automatically.

With this in idle state power is reduced.

Tested on : Harmony
Enumeartion is happening fine.
LAN and USB HID devices are working fine

Change-Id: Ifd653bebfb52c7702f7d24bf11ccf93e62ea0f66
Reviewed-on: http://git-master/r/915
Reviewed-by: Gary King &lt;gking@nvidia.com&gt;
Tested-by: Gary King &lt;gking@nvidia.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
           are happening though a device connection on host port.

Currently for harmony, an intergrated SMSC hub present on USB3. Because
of this device connection is present on USB3 and USB power busy hints
are always on. To avoid this, for host by default busy hints are off and
USB busy hints will be on for :
1.Bulk and isochronus transfers
2.Interrupts transfers with buffer length &gt;= 256.
Busy hint will be on for pre-defined amount of time
and after that busy hints will be off automatically.

With this in idle state power is reduced.

Tested on : Harmony
Enumeartion is happening fine.
LAN and USB HID devices are working fine

Change-Id: Ifd653bebfb52c7702f7d24bf11ccf93e62ea0f66
Reviewed-on: http://git-master/r/915
Reviewed-by: Gary King &lt;gking@nvidia.com&gt;
Tested-by: Gary King &lt;gking@nvidia.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>tegra: EHCI bus suspend/resume requires CONFIG_PM</title>
<updated>2010-03-05T21:55:32+00:00</updated>
<author>
<name>Scott Williams</name>
<email>scwilliams@nvidia.com</email>
</author>
<published>2010-03-05T18:46:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=bc646f81bff16fbb813977d9b926b04a32acf8ce'/>
<id>bc646f81bff16fbb813977d9b926b04a32acf8ce</id>
<content type='text'>
If CONFIG_PM is not selected, don't compile EHCI bus suspend/resume.

Change-Id: Ia89612fa3d82dc671accc597e4d1ca05f56eaa5c
Reviewed-on: http://git-master/r/783
Reviewed-by: Gary King &lt;gking@nvidia.com&gt;
Tested-by: Gary King &lt;gking@nvidia.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
If CONFIG_PM is not selected, don't compile EHCI bus suspend/resume.

Change-Id: Ia89612fa3d82dc671accc597e4d1ca05f56eaa5c
Reviewed-on: http://git-master/r/783
Reviewed-by: Gary King &lt;gking@nvidia.com&gt;
Tested-by: Gary King &lt;gking@nvidia.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[usb mass storage] return -EINVAL on NULL request</title>
<updated>2010-03-05T04:20:10+00:00</updated>
<author>
<name>Gary King</name>
<email>gking@nvidia.com</email>
</author>
<published>2010-03-04T02:20:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=ed986ab741c8c035c605ce4392d793d9ad72f5ae'/>
<id>ed986ab741c8c035c605ce4392d793d9ad72f5ae</id>
<content type='text'>
there appears to be a race condition which causes req to be NULL.
issue a warning and return -EINVAL in this case, rather than
dereferencing a NULL pointer

Change-Id: I46d7fdd63ec6fb09bdda18e1a1e5509af079beab
Reviewed-on: http://git-master/r/768
Reviewed-by: Gary King &lt;gking@nvidia.com&gt;
Tested-by: Gary King &lt;gking@nvidia.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
there appears to be a race condition which causes req to be NULL.
issue a warning and return -EINVAL in this case, rather than
dereferencing a NULL pointer

Change-Id: I46d7fdd63ec6fb09bdda18e1a1e5509af079beab
Reviewed-on: http://git-master/r/768
Reviewed-by: Gary King &lt;gking@nvidia.com&gt;
Tested-by: Gary King &lt;gking@nvidia.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>tegra usb: Making USB busy hints off on resume, when there is no adb</title>
<updated>2010-03-04T03:56:49+00:00</updated>
<author>
<name>sgadagottu</name>
<email>sgadagottu@nvidia.com</email>
</author>
<published>2010-03-03T14:05:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=17f12ae875e3afedaaaca474b46d3ccd5150bea0'/>
<id>17f12ae875e3afedaaaca474b46d3ccd5150bea0</id>
<content type='text'>
           cable/usb device connection

Currently on resume from LP1, though there is no adb cable/USB device connected to
USB1/USB3 then also usb busy hints are getting on. With this change on resume:
For gadget driver, if cable is not connected then busy hints made off.
For host driver, if device(s) are not connected then busy hints are off.

Code Clean-up for power improvement

Tested on : Whistler board USB1 OTG + USB3 host
Tested with all possible connection on USB1 and USB3

Change-Id: I6d210bba1264d9c0134d586d3f67ff609ba2b3fe
Reviewed-on: http://git-master/r/745
Reviewed-by: Narendra Damahe &lt;ndamahe@nvidia.com&gt;
Tested-by: Narendra Damahe &lt;ndamahe@nvidia.com&gt;
Reviewed-by: Gary King &lt;gking@nvidia.com&gt;
Tested-by: Gary King &lt;gking@nvidia.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
           cable/usb device connection

Currently on resume from LP1, though there is no adb cable/USB device connected to
USB1/USB3 then also usb busy hints are getting on. With this change on resume:
For gadget driver, if cable is not connected then busy hints made off.
For host driver, if device(s) are not connected then busy hints are off.

Code Clean-up for power improvement

Tested on : Whistler board USB1 OTG + USB3 host
Tested with all possible connection on USB1 and USB3

Change-Id: I6d210bba1264d9c0134d586d3f67ff609ba2b3fe
Reviewed-on: http://git-master/r/745
Reviewed-by: Narendra Damahe &lt;ndamahe@nvidia.com&gt;
Tested-by: Narendra Damahe &lt;ndamahe@nvidia.com&gt;
Reviewed-by: Gary King &lt;gking@nvidia.com&gt;
Tested-by: Gary King &lt;gking@nvidia.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>tegra udc: Add USB charger support</title>
<updated>2010-03-03T04:00:25+00:00</updated>
<author>
<name>Venkat Moganty</name>
<email>vmoganty@nvidia.com</email>
</author>
<published>2010-02-26T08:36:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=c45cca3c944ab8bcfca4d87f66ba0f8fb4693f85'/>
<id>c45cca3c944ab8bcfca4d87f66ba0f8fb4693f85</id>
<content type='text'>
Adding support for usb charger detection and setting the charging current
limit through the regulator for drawing the vbus current.

Bug 631316 USB charging support in Android
Tested on: whistler/Android

Change-Id: Ib73ac660d1546fbbdc0ed19ca0f25e04b3676886
Reviewed-on: http://git-master/r/693
Reviewed-by: Gary King &lt;gking@nvidia.com&gt;
Tested-by: Gary King &lt;gking@nvidia.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Adding support for usb charger detection and setting the charging current
limit through the regulator for drawing the vbus current.

Bug 631316 USB charging support in Android
Tested on: whistler/Android

Change-Id: Ib73ac660d1546fbbdc0ed19ca0f25e04b3676886
Reviewed-on: http://git-master/r/693
Reviewed-by: Gary King &lt;gking@nvidia.com&gt;
Tested-by: Gary King &lt;gking@nvidia.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
