<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux.git/drivers/usb/musb, branch v3.14</title>
<subtitle>Linux kernel source tree</subtitle>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/'/>
<entry>
<title>usb: musb: correct use of schedule_delayed_work()</title>
<updated>2014-02-20T15:17:24+00:00</updated>
<author>
<name>Daniel Mack</name>
<email>zonque@gmail.com</email>
</author>
<published>2014-02-05T14:34:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=9ccfaf74e766d49a64f86943f98d0a82996d4dec'/>
<id>9ccfaf74e766d49a64f86943f98d0a82996d4dec</id>
<content type='text'>
schedule_delayed_work() takes the delay in jiffies, not msecs.

This bug slipped in with the recent reset logic cleanup
(8ed1fb790ea: "usb: musb: finish suspend/reset work independently from
musb_hub_control()").

Signed-off-by: Daniel Mack &lt;daniel@zonque.org&gt;
Signed-off-by: Felipe Balbi &lt;balbi@ti.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
schedule_delayed_work() takes the delay in jiffies, not msecs.

This bug slipped in with the recent reset logic cleanup
(8ed1fb790ea: "usb: musb: finish suspend/reset work independently from
musb_hub_control()").

Signed-off-by: Daniel Mack &lt;daniel@zonque.org&gt;
Signed-off-by: Felipe Balbi &lt;balbi@ti.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>usb: musb: do not sleep in atomic context</title>
<updated>2014-02-18T16:34:07+00:00</updated>
<author>
<name>Daniel Mack</name>
<email>zonque@gmail.com</email>
</author>
<published>2014-01-15T13:09:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=30d361bf0f81ece8de42c5e0a4e560270ad72b65'/>
<id>30d361bf0f81ece8de42c5e0a4e560270ad72b65</id>
<content type='text'>
musb_port_reset() is called from musb_hub_control() which in turn holds
a spinlock, so musb_port_reset() is not allowed to call msleep().

With the asynchronous work helpers in place, this is fortunately easy to
fix by rescheduling the reset deassertion function to after the time
when the wait period is finished.

Note, however, that the MUSB_POWER_RESUME bit is only set on AM33xx
processors under rare conditions such as when to another driver
reporting an error during suspend. Hence, this didn't hit me yet in
normal operation.

Signed-off-by: Daniel Mack &lt;zonque@gmail.com&gt;
Signed-off-by: Felipe Balbi &lt;balbi@ti.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
musb_port_reset() is called from musb_hub_control() which in turn holds
a spinlock, so musb_port_reset() is not allowed to call msleep().

With the asynchronous work helpers in place, this is fortunately easy to
fix by rescheduling the reset deassertion function to after the time
when the wait period is finished.

Note, however, that the MUSB_POWER_RESUME bit is only set on AM33xx
processors under rare conditions such as when to another driver
reporting an error during suspend. Hence, this didn't hit me yet in
normal operation.

Signed-off-by: Daniel Mack &lt;zonque@gmail.com&gt;
Signed-off-by: Felipe Balbi &lt;balbi@ti.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>usb: musb: core: Fix remote-wakeup resume</title>
<updated>2014-02-18T16:32:26+00:00</updated>
<author>
<name>Roger Quadros</name>
<email>rogerq@ti.com</email>
</author>
<published>2014-02-04T13:29:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=33f8d75f5771993ef16ed6bd56d7210f54226203'/>
<id>33f8d75f5771993ef16ed6bd56d7210f54226203</id>
<content type='text'>
During resume don't touch SUSPENDM/RESUME bits of POWER register
while restoring controller context. These bits might be changed
by the controller during resume operation and so will be different
than what they were during suspend.

e.g. SUSPENDM bit is set by software during USB global suspend but
automatically cleared by the controller during remote wakeup or
during resume. Setting this bit back while restoring context
causes undesired behaviour. i.e. Babble interrupt is generated
and USB is broken.

Signed-off-by: Roger Quadros &lt;rogerq@ti.com&gt;
Signed-off-by: Felipe Balbi &lt;balbi@ti.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
During resume don't touch SUSPENDM/RESUME bits of POWER register
while restoring controller context. These bits might be changed
by the controller during resume operation and so will be different
than what they were during suspend.

e.g. SUSPENDM bit is set by software during USB global suspend but
automatically cleared by the controller during remote wakeup or
during resume. Setting this bit back while restoring context
causes undesired behaviour. i.e. Babble interrupt is generated
and USB is broken.

Signed-off-by: Roger Quadros &lt;rogerq@ti.com&gt;
Signed-off-by: Felipe Balbi &lt;balbi@ti.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>usb: musb: host: Fix SuperSpeed hub enumeration</title>
<updated>2014-02-18T16:32:23+00:00</updated>
<author>
<name>Ajay Kumar Gupta</name>
<email>ajay.gupta@ti.com</email>
</author>
<published>2014-02-04T13:28:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=3c4653c1f62ea5f1706084090a5a3bcf3402dc8f'/>
<id>3c4653c1f62ea5f1706084090a5a3bcf3402dc8f</id>
<content type='text'>
Disables PING on status phase of control transfer.
PING token is not mandatory in status phase of control transfer
and so some high speed USB devices don't support it. If such devices
are connected to MUSB then they would not respond to PING token
causing delayed or failed enumeration.

[Roger Q] Fixes enumeration issues with some Super-Speed USB hubs
e.g. Dlink DUB-1340

Signed-off-by: Ajay Kumar Gupta &lt;ajay.gupta@ti.com&gt;
Signed-off-by: Roger Quadros &lt;rogerq@ti.com&gt;
Signed-off-by: Felipe Balbi &lt;balbi@ti.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Disables PING on status phase of control transfer.
PING token is not mandatory in status phase of control transfer
and so some high speed USB devices don't support it. If such devices
are connected to MUSB then they would not respond to PING token
causing delayed or failed enumeration.

[Roger Q] Fixes enumeration issues with some Super-Speed USB hubs
e.g. Dlink DUB-1340

Signed-off-by: Ajay Kumar Gupta &lt;ajay.gupta@ti.com&gt;
Signed-off-by: Roger Quadros &lt;rogerq@ti.com&gt;
Signed-off-by: Felipe Balbi &lt;balbi@ti.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>usb: musb: fix obex in g_nokia.ko causing kernel panic</title>
<updated>2014-02-18T15:38:11+00:00</updated>
<author>
<name>Felipe Balbi</name>
<email>balbi@ti.com</email>
</author>
<published>2014-02-06T19:25:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=30a70b026b4cde4e51989661ff3bd0ede08d9646'/>
<id>30a70b026b4cde4e51989661ff3bd0ede08d9646</id>
<content type='text'>
phy_power_off() can, depending on the PHY being used,
start I2C transactions which shouldn't happen in
atomic context.

Current call to phy_power_off() inside omap2430_runtime
callbacks causes the following dump, as a fix, just don't
power off the PHY in runtime.

[   18.606414] [&lt;c037eac0&gt;] (__schedule+0x5c/0x50c) from [&lt;c037d3bc&gt;] (schedule_timeout+0x1f4/0x25c)
[   18.623809] [&lt;c037d3bc&gt;] (schedule_timeout+0x1f4/0x25c) from [&lt;c037f12c&gt;] (wait_for_common+0xc8/0x1ac)
[   18.649291] [&lt;c037f12c&gt;] (wait_for_common+0xc8/0x1ac) from [&lt;c028c1c0&gt;] (omap_i2c_xfer+0x338/0x488)
[   18.674499] [&lt;c028c1c0&gt;] (omap_i2c_xfer+0x338/0x488) from [&lt;c0288144&gt;] (__i2c_transfer+0x40/0x74)
[   18.692047] [&lt;c0288144&gt;] (__i2c_transfer+0x40/0x74) from [&lt;c0288a2c&gt;] (i2c_transfer+0x6c/0x90)
[   18.709320] [&lt;c0288a2c&gt;] (i2c_transfer+0x6c/0x90) from [&lt;c02351c8&gt;] (regmap_i2c_read+0x48/0x68)
[   18.726715] [&lt;c02351c8&gt;] (regmap_i2c_read+0x48/0x68) from [&lt;c023161c&gt;] (_regmap_raw_read+0x128/0x220)
[   18.752685] [&lt;c023161c&gt;] (_regmap_raw_read+0x128/0x220) from [&lt;c02317b4&gt;] (regmap_raw_read+0xa0/0x130)
[   18.779052] [&lt;c02317b4&gt;] (regmap_raw_read+0xa0/0x130) from [&lt;c023193c&gt;] (regmap_bulk_read+0xf8/0x16c)
[   18.805694] [&lt;c023193c&gt;] (regmap_bulk_read+0xf8/0x16c) from [&lt;c0238ea8&gt;] (twl_i2c_read+0xa4/0xe0)
[   18.823730] [&lt;c0238ea8&gt;] (twl_i2c_read+0xa4/0xe0) from [&lt;c0274d34&gt;] (__twl4030_phy_power.isra.12+0x1c/0x58)
[   18.850921] [&lt;c0274d34&gt;] (__twl4030_phy_power.isra.12+0x1c/0x58) from [&lt;c0274df0&gt;]
(twl4030_phy_power.part.14+0x80/0xc8)
[   18.879699] [&lt;c0274df0&gt;] (twl4030_phy_power.part.14+0x80/0xc8) from [&lt;c0274f9c&gt;]
(twl4030_set_suspend+0x54/0x1e8)
[   18.908325] [&lt;c0274f9c&gt;] (twl4030_set_suspend+0x54/0x1e8) from [&lt;c027c8c4&gt;]
(omap2430_runtime_resume+0x5c/0x64)
[   18.937042] [&lt;c027c8c4&gt;] (omap2430_runtime_resume+0x5c/0x64) from [&lt;c0225dd0&gt;]
(pm_generic_runtime_resume+0x2c/0x38)
[   18.966461] [&lt;c0225dd0&gt;] (pm_generic_runtime_resume+0x2c/0x38) from [&lt;c0229fe0&gt;] (__rpm_callback+0x54/0x80)
[   18.995117] [&lt;c0229fe0&gt;] (__rpm_callback+0x54/0x80) from [&lt;c022a04c&gt;] (rpm_callback+0x40/0x74)
[   19.013610] [&lt;c022a04c&gt;] (rpm_callback+0x40/0x74) from [&lt;c022b3c8&gt;] (rpm_resume+0x448/0x63c)
[   19.031921] [&lt;c022b3c8&gt;] (rpm_resume+0x448/0x63c) from [&lt;c022b2e4&gt;] (rpm_resume+0x364/0x63c)
[   19.050140] [&lt;c022b2e4&gt;] (rpm_resume+0x364/0x63c) from [&lt;c022b874&gt;] (__pm_runtime_resume+0x48/0x74)
[   19.077728] [&lt;c022b874&gt;] (__pm_runtime_resume+0x48/0x74) from [&lt;c027b4fc&gt;] (musb_gadget_pullup+0x1c/0xb4)
[   19.105895] [&lt;c027b4fc&gt;] (musb_gadget_pullup+0x1c/0xb4) from [&lt;bf025c14&gt;] (usb_function_deactivate+0x54/0xa4
[libcomposite])
[   19.135955] [&lt;bf025c14&gt;] (usb_function_deactivate+0x54/0xa4 [libcomposite]) from [&lt;bf05b3b8&gt;]
(obex_bind+0x124/0x1d8 [usb_f_obex])
[   19.166870] [&lt;bf05b3b8&gt;] (obex_bind+0x124/0x1d8 [usb_f_obex]) from [&lt;bf025794&gt;] (usb_add_function+0x58/0xf4
[libcomposite])
[   19.197143] [&lt;bf025794&gt;] (usb_add_function+0x58/0xf4 [libcomposite]) from [&lt;bf037420&gt;]
(nokia_bind_config+0x204/0x250 [g_nokia])
[   19.227905] [&lt;bf037420&gt;] (nokia_bind_config+0x204/0x250 [g_nokia]) from [&lt;bf0263fc&gt;] (usb_add_config+0x28/0xc0
[libcomposite])
[   19.258483] [&lt;bf0263fc&gt;] (usb_add_config+0x28/0xc0 [libcomposite]) from [&lt;bf03709c&gt;] (nokia_bind+0x9c/0x21c
[g_nokia])
[   19.288421] [&lt;bf03709c&gt;] (nokia_bind+0x9c/0x21c [g_nokia]) from [&lt;bf0275bc&gt;] (composite_bind+0x74/0x180
[libcomposite])
[   19.318420] [&lt;bf0275bc&gt;] (composite_bind+0x74/0x180 [libcomposite]) from [&lt;c027d658&gt;]
(udc_bind_to_driver+0x2c/0xc4)
[   19.348114] [&lt;c027d658&gt;] (udc_bind_to_driver+0x2c/0xc4) from [&lt;c027d764&gt;] (usb_gadget_probe_driver+0x74/0x94)
[   19.377166] [&lt;c027d764&gt;] (usb_gadget_probe_driver+0x74/0x94) from [&lt;c00086f8&gt;] (do_one_initcall+0x94/0x138)
[   19.406005] [&lt;c00086f8&gt;] (do_one_initcall+0x94/0x138) from [&lt;c007a460&gt;] (load_module+0x113c/0x13c4)
[   19.434051] [&lt;c007a460&gt;] (load_module+0x113c/0x13c4) from [&lt;c007a7b4&gt;] (SyS_init_module+0xcc/0xec)
[   19.462127] [&lt;c007a7b4&gt;] (SyS_init_module+0xcc/0xec) from [&lt;c000dd40&gt;] (ret_fast_syscall+0x0/0x30)
[   19.490753] Code: 0a00002e e1a00004 eb001438 e598300c (e5d3202c)
[   19.506805] ---[ end trace 060b62ec0d68a78b ]---
[   19.523132] Kernel panic - not syncing: Fatal exception in interrupt

dump is from 3.12-rc5 kernel

Reported-by: Pali Rohár &lt;pali.rohar@gmail.com&gt;
Signed-off-by: Ivaylo Dimitrov &lt;ivo.g.dimitrov.75@gmail.com&gt;
Signed-off-by: Felipe Balbi &lt;balbi@ti.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
phy_power_off() can, depending on the PHY being used,
start I2C transactions which shouldn't happen in
atomic context.

Current call to phy_power_off() inside omap2430_runtime
callbacks causes the following dump, as a fix, just don't
power off the PHY in runtime.

[   18.606414] [&lt;c037eac0&gt;] (__schedule+0x5c/0x50c) from [&lt;c037d3bc&gt;] (schedule_timeout+0x1f4/0x25c)
[   18.623809] [&lt;c037d3bc&gt;] (schedule_timeout+0x1f4/0x25c) from [&lt;c037f12c&gt;] (wait_for_common+0xc8/0x1ac)
[   18.649291] [&lt;c037f12c&gt;] (wait_for_common+0xc8/0x1ac) from [&lt;c028c1c0&gt;] (omap_i2c_xfer+0x338/0x488)
[   18.674499] [&lt;c028c1c0&gt;] (omap_i2c_xfer+0x338/0x488) from [&lt;c0288144&gt;] (__i2c_transfer+0x40/0x74)
[   18.692047] [&lt;c0288144&gt;] (__i2c_transfer+0x40/0x74) from [&lt;c0288a2c&gt;] (i2c_transfer+0x6c/0x90)
[   18.709320] [&lt;c0288a2c&gt;] (i2c_transfer+0x6c/0x90) from [&lt;c02351c8&gt;] (regmap_i2c_read+0x48/0x68)
[   18.726715] [&lt;c02351c8&gt;] (regmap_i2c_read+0x48/0x68) from [&lt;c023161c&gt;] (_regmap_raw_read+0x128/0x220)
[   18.752685] [&lt;c023161c&gt;] (_regmap_raw_read+0x128/0x220) from [&lt;c02317b4&gt;] (regmap_raw_read+0xa0/0x130)
[   18.779052] [&lt;c02317b4&gt;] (regmap_raw_read+0xa0/0x130) from [&lt;c023193c&gt;] (regmap_bulk_read+0xf8/0x16c)
[   18.805694] [&lt;c023193c&gt;] (regmap_bulk_read+0xf8/0x16c) from [&lt;c0238ea8&gt;] (twl_i2c_read+0xa4/0xe0)
[   18.823730] [&lt;c0238ea8&gt;] (twl_i2c_read+0xa4/0xe0) from [&lt;c0274d34&gt;] (__twl4030_phy_power.isra.12+0x1c/0x58)
[   18.850921] [&lt;c0274d34&gt;] (__twl4030_phy_power.isra.12+0x1c/0x58) from [&lt;c0274df0&gt;]
(twl4030_phy_power.part.14+0x80/0xc8)
[   18.879699] [&lt;c0274df0&gt;] (twl4030_phy_power.part.14+0x80/0xc8) from [&lt;c0274f9c&gt;]
(twl4030_set_suspend+0x54/0x1e8)
[   18.908325] [&lt;c0274f9c&gt;] (twl4030_set_suspend+0x54/0x1e8) from [&lt;c027c8c4&gt;]
(omap2430_runtime_resume+0x5c/0x64)
[   18.937042] [&lt;c027c8c4&gt;] (omap2430_runtime_resume+0x5c/0x64) from [&lt;c0225dd0&gt;]
(pm_generic_runtime_resume+0x2c/0x38)
[   18.966461] [&lt;c0225dd0&gt;] (pm_generic_runtime_resume+0x2c/0x38) from [&lt;c0229fe0&gt;] (__rpm_callback+0x54/0x80)
[   18.995117] [&lt;c0229fe0&gt;] (__rpm_callback+0x54/0x80) from [&lt;c022a04c&gt;] (rpm_callback+0x40/0x74)
[   19.013610] [&lt;c022a04c&gt;] (rpm_callback+0x40/0x74) from [&lt;c022b3c8&gt;] (rpm_resume+0x448/0x63c)
[   19.031921] [&lt;c022b3c8&gt;] (rpm_resume+0x448/0x63c) from [&lt;c022b2e4&gt;] (rpm_resume+0x364/0x63c)
[   19.050140] [&lt;c022b2e4&gt;] (rpm_resume+0x364/0x63c) from [&lt;c022b874&gt;] (__pm_runtime_resume+0x48/0x74)
[   19.077728] [&lt;c022b874&gt;] (__pm_runtime_resume+0x48/0x74) from [&lt;c027b4fc&gt;] (musb_gadget_pullup+0x1c/0xb4)
[   19.105895] [&lt;c027b4fc&gt;] (musb_gadget_pullup+0x1c/0xb4) from [&lt;bf025c14&gt;] (usb_function_deactivate+0x54/0xa4
[libcomposite])
[   19.135955] [&lt;bf025c14&gt;] (usb_function_deactivate+0x54/0xa4 [libcomposite]) from [&lt;bf05b3b8&gt;]
(obex_bind+0x124/0x1d8 [usb_f_obex])
[   19.166870] [&lt;bf05b3b8&gt;] (obex_bind+0x124/0x1d8 [usb_f_obex]) from [&lt;bf025794&gt;] (usb_add_function+0x58/0xf4
[libcomposite])
[   19.197143] [&lt;bf025794&gt;] (usb_add_function+0x58/0xf4 [libcomposite]) from [&lt;bf037420&gt;]
(nokia_bind_config+0x204/0x250 [g_nokia])
[   19.227905] [&lt;bf037420&gt;] (nokia_bind_config+0x204/0x250 [g_nokia]) from [&lt;bf0263fc&gt;] (usb_add_config+0x28/0xc0
[libcomposite])
[   19.258483] [&lt;bf0263fc&gt;] (usb_add_config+0x28/0xc0 [libcomposite]) from [&lt;bf03709c&gt;] (nokia_bind+0x9c/0x21c
[g_nokia])
[   19.288421] [&lt;bf03709c&gt;] (nokia_bind+0x9c/0x21c [g_nokia]) from [&lt;bf0275bc&gt;] (composite_bind+0x74/0x180
[libcomposite])
[   19.318420] [&lt;bf0275bc&gt;] (composite_bind+0x74/0x180 [libcomposite]) from [&lt;c027d658&gt;]
(udc_bind_to_driver+0x2c/0xc4)
[   19.348114] [&lt;c027d658&gt;] (udc_bind_to_driver+0x2c/0xc4) from [&lt;c027d764&gt;] (usb_gadget_probe_driver+0x74/0x94)
[   19.377166] [&lt;c027d764&gt;] (usb_gadget_probe_driver+0x74/0x94) from [&lt;c00086f8&gt;] (do_one_initcall+0x94/0x138)
[   19.406005] [&lt;c00086f8&gt;] (do_one_initcall+0x94/0x138) from [&lt;c007a460&gt;] (load_module+0x113c/0x13c4)
[   19.434051] [&lt;c007a460&gt;] (load_module+0x113c/0x13c4) from [&lt;c007a7b4&gt;] (SyS_init_module+0xcc/0xec)
[   19.462127] [&lt;c007a7b4&gt;] (SyS_init_module+0xcc/0xec) from [&lt;c000dd40&gt;] (ret_fast_syscall+0x0/0x30)
[   19.490753] Code: 0a00002e e1a00004 eb001438 e598300c (e5d3202c)
[   19.506805] ---[ end trace 060b62ec0d68a78b ]---
[   19.523132] Kernel panic - not syncing: Fatal exception in interrupt

dump is from 3.12-rc5 kernel

Reported-by: Pali Rohár &lt;pali.rohar@gmail.com&gt;
Signed-off-by: Ivaylo Dimitrov &lt;ivo.g.dimitrov.75@gmail.com&gt;
Signed-off-by: Felipe Balbi &lt;balbi@ti.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>usb: delete non-required instances of include &lt;linux/init.h&gt;</title>
<updated>2014-01-08T23:01:39+00:00</updated>
<author>
<name>Paul Gortmaker</name>
<email>paul.gortmaker@windriver.com</email>
</author>
<published>2014-01-08T16:08:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=803a536243b3a1ed2289f41897b11b72bd083309'/>
<id>803a536243b3a1ed2289f41897b11b72bd083309</id>
<content type='text'>
None of these files are actually using any __init type directives
and hence don't need to include &lt;linux/init.h&gt;.  Most are just a
left over from __devinit and __cpuinit removal, or simply due to
code getting copied from one driver to the next.

Signed-off-by: Paul Gortmaker &lt;paul.gortmaker@windriver.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
None of these files are actually using any __init type directives
and hence don't need to include &lt;linux/init.h&gt;.  Most are just a
left over from __devinit and __cpuinit removal, or simply due to
code getting copied from one driver to the next.

Signed-off-by: Paul Gortmaker &lt;paul.gortmaker@windriver.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>USB: musb: correct spelling mistakes in comment and error string</title>
<updated>2014-01-03T20:39:31+00:00</updated>
<author>
<name>Rahul Bedarkar</name>
<email>rahulbedarkar89@gmail.com</email>
</author>
<published>2014-01-02T13:57:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=5ae477b05fb5edd059f709ff0a7a2f40fb2827d1'/>
<id>5ae477b05fb5edd059f709ff0a7a2f40fb2827d1</id>
<content type='text'>
Signed-off-by: Rahul Bedarkar &lt;rahulbedarkar89@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Rahul Bedarkar &lt;rahulbedarkar89@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge tag 'usb-for-v3.14' of git://git.kernel.org/pub/scm/linux/kernel/git/balbi/usb into usb-next</title>
<updated>2014-01-03T20:15:10+00:00</updated>
<author>
<name>Greg Kroah-Hartman</name>
<email>gregkh@linuxfoundation.org</email>
</author>
<published>2014-01-03T20:15:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=73ad0adcb69d6a895ff73855ab366a7ae0b2fb0b'/>
<id>73ad0adcb69d6a895ff73855ab366a7ae0b2fb0b</id>
<content type='text'>
Felipe writes:

usb: changes for v3.14 merge window

This pull request is quite extensive, containing
105 non-merge commits. Because of that, we describe
the changes in sections below:

New drivers:
	- Keystone PHY driver and DWC3 Glue Layer
	- Aeroflex Gaisler GRUSBDC
	- Tahvo PHY driver for N770
	- JZ4740 MUSB gluer Layer
	- Broadcom PHY Driver

Important new features:
	- MUSB DSPS learned about suspend/resume
	- New quirk_ep_out_aligned_size flag added to struct usb_gadget
	- DWC3 initializes the new quirk flag so gadget drivers can use it.
	- AM335x PHY Driver learns about remote wakeup
	- Renesas USBHS now requests DMA Engine only once
	- s3c-hsotg is now re-used on Broadcom devices
	- USB PHY layer now makes sure to initialize the notifier for all
		drivers
	- omap-control learned about TI's new AM437x devices
	- few other usb gadget/function drivers learned about the new
		configfs-based binding.

Misc Fixes and Clean Ups:
	- Several sparse fixes all over the place
	- Removal of redundant of_match_ptr()
	- r-car gen2 phy now uses usb_add_phy_dev()
	- removal of DEFINE_PCI_DEVICE_TABLE() from a few drivers
	- conversion to clk_prepare/clk_unprepare on r8a66597-udc
	- some randconfig errors and build warnings were fixed
	- removal of unnecessary lock on dwc3-omap.c

Signed-of-by: Felipe Balbi &lt;balbi@ti.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Felipe writes:

usb: changes for v3.14 merge window

This pull request is quite extensive, containing
105 non-merge commits. Because of that, we describe
the changes in sections below:

New drivers:
	- Keystone PHY driver and DWC3 Glue Layer
	- Aeroflex Gaisler GRUSBDC
	- Tahvo PHY driver for N770
	- JZ4740 MUSB gluer Layer
	- Broadcom PHY Driver

Important new features:
	- MUSB DSPS learned about suspend/resume
	- New quirk_ep_out_aligned_size flag added to struct usb_gadget
	- DWC3 initializes the new quirk flag so gadget drivers can use it.
	- AM335x PHY Driver learns about remote wakeup
	- Renesas USBHS now requests DMA Engine only once
	- s3c-hsotg is now re-used on Broadcom devices
	- USB PHY layer now makes sure to initialize the notifier for all
		drivers
	- omap-control learned about TI's new AM437x devices
	- few other usb gadget/function drivers learned about the new
		configfs-based binding.

Misc Fixes and Clean Ups:
	- Several sparse fixes all over the place
	- Removal of redundant of_match_ptr()
	- r-car gen2 phy now uses usb_add_phy_dev()
	- removal of DEFINE_PCI_DEVICE_TABLE() from a few drivers
	- conversion to clk_prepare/clk_unprepare on r8a66597-udc
	- some randconfig errors and build warnings were fixed
	- removal of unnecessary lock on dwc3-omap.c

Signed-of-by: Felipe Balbi &lt;balbi@ti.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>usb: musb: Remove usb_disable() check in module_init()</title>
<updated>2013-12-26T16:17:40+00:00</updated>
<author>
<name>Ezequiel Garcia</name>
<email>ezequiel.garcia@free-electrons.com</email>
</author>
<published>2013-12-26T12:24:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=89f836a8c56bfea6585a09f7afff7094968a4fd0'/>
<id>89f836a8c56bfea6585a09f7afff7094968a4fd0</id>
<content type='text'>
Removing the check to usb_disable() before registering the platform
driver allows to build this driver when !USB &amp;&amp; USB_GADGET, to be
used in gadget-only mode.

Also, use module_platform_driver() to register the platform driver.

Signed-off-by: Ezequiel Garcia &lt;ezequiel.garcia@free-electrons.com&gt;
Signed-off-by: Felipe Balbi &lt;balbi@ti.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Removing the check to usb_disable() before registering the platform
driver allows to build this driver when !USB &amp;&amp; USB_GADGET, to be
used in gadget-only mode.

Also, use module_platform_driver() to register the platform driver.

Signed-off-by: Ezequiel Garcia &lt;ezequiel.garcia@free-electrons.com&gt;
Signed-off-by: Felipe Balbi &lt;balbi@ti.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>usb: musb: Rework USB and USB_GADGET dependency</title>
<updated>2013-12-23T16:28:56+00:00</updated>
<author>
<name>Ezequiel Garcia</name>
<email>ezequiel.garcia@free-electrons.com</email>
</author>
<published>2013-12-22T03:08:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=845c071b7853c0046693022f4e95c9cdd043e2db'/>
<id>845c071b7853c0046693022f4e95c9cdd043e2db</id>
<content type='text'>
This USB controller can work in as host-only, gadget-only or dual-role
modes. Rework the dependency on the USB and USB_GADGET configs in order
to allow building the driver when !USB or !USG_GADGET.

Signed-off-by: Ezequiel Garcia &lt;ezequiel.garcia@free-electrons.com&gt;
Signed-off-by: Felipe Balbi &lt;balbi@ti.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This USB controller can work in as host-only, gadget-only or dual-role
modes. Rework the dependency on the USB and USB_GADGET configs in order
to allow building the driver when !USB or !USG_GADGET.

Signed-off-by: Ezequiel Garcia &lt;ezequiel.garcia@free-electrons.com&gt;
Signed-off-by: Felipe Balbi &lt;balbi@ti.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
