<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/drivers/bluetooth/bcm203x.c, branch linux-4.16.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.</subtitle>
<id>https://universe.0xinfinity.dev/distro/kernel/atom?h=linux-4.16.y</id>
<link rel='self' href='https://universe.0xinfinity.dev/distro/kernel/atom?h=linux-4.16.y'/>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/'/>
<updated>2017-10-14T07:25:51Z</updated>
<entry>
<title>Bluetooth: mark expected switch fall-throughs</title>
<updated>2017-10-14T07:25:51Z</updated>
<author>
<name>Gustavo A. R. Silva</name>
<email>garsilva@embeddedor.com</email>
</author>
<published>2017-10-12T22:24:02Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=fac72b243cc789bb209e6eca824919b42d98cfe2'/>
<id>urn:sha1:fac72b243cc789bb209e6eca824919b42d98cfe2</id>
<content type='text'>
In preparation to enabling -Wimplicit-fallthrough, mark switch cases
where we are expecting to fall through.

In this particular case, notice that I replaced the
"deliberate fall-through..." comment with a "fall through"
comment, which is what GCC is expecting to find.

Signed-off-by: Gustavo A. R. Silva &lt;garsilva@embeddedor.com&gt;
Signed-off-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
</content>
</entry>
<entry>
<title>bluetooth: bcm203x: don't print error when allocating urb fails</title>
<updated>2016-09-27T10:20:17Z</updated>
<author>
<name>Wolfram Sang</name>
<email>wsa-dev@sang-engineering.com</email>
</author>
<published>2016-08-11T21:00:31Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=a2f195a73eba807006fb0cb882ecb552c06eea00'/>
<id>urn:sha1:a2f195a73eba807006fb0cb882ecb552c06eea00</id>
<content type='text'>
kmalloc will print enough information in case of failure.

Signed-off-by: Wolfram Sang &lt;wsa-dev@sang-engineering.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>Bluetooth: bcm203x: Remove redundant error message</title>
<updated>2015-12-22T14:25:33Z</updated>
<author>
<name>Syam Sidhardhan</name>
<email>s.syam@samsung.com</email>
</author>
<published>2015-12-22T14:00:18Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=17722e245b1eed116268338a0a05970bf797ce06'/>
<id>urn:sha1:17722e245b1eed116268338a0a05970bf797ce06</id>
<content type='text'>
devm_kzalloc prints its own OOM message upon failure.

Signed-off-by: Syam Sidhardhan &lt;s.syam@samsung.com&gt;
Signed-off-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
</content>
</entry>
<entry>
<title>Bluetooth: Use devm_kzalloc in bcm203x.c file.</title>
<updated>2012-08-06T18:03:00Z</updated>
<author>
<name>Sachin Kamat</name>
<email>sachin.kamat@linaro.org</email>
</author>
<published>2012-07-27T07:08:31Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=9357cc60789cfdcbbeeff85d9c423a91d621ae1f'/>
<id>urn:sha1:9357cc60789cfdcbbeeff85d9c423a91d621ae1f</id>
<content type='text'>
devm_kzalloc() eliminates the need to free memory explicitly
thereby saving some cleanup code.

Signed-off-by: Sachin Kamat &lt;sachin.kamat@linaro.org&gt;
Acked-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
Signed-off-by: Gustavo Padovan &lt;gustavo.padovan@collabora.co.uk&gt;
</content>
</entry>
<entry>
<title>USB: Disable hub-initiated LPM for comms devices.</title>
<updated>2012-05-18T22:42:55Z</updated>
<author>
<name>Sarah Sharp</name>
<email>sarah.a.sharp@linux.intel.com</email>
</author>
<published>2012-04-23T17:08:51Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=e1f12eb6ba6f1e74007eb01ed26fad7c5239d62b'/>
<id>urn:sha1:e1f12eb6ba6f1e74007eb01ed26fad7c5239d62b</id>
<content type='text'>
Hub-initiated LPM is not good for USB communications devices.  Comms
devices should be able to tell when their link can go into a lower power
state, because they know when an incoming transmission is finished.
Ideally, these devices would slam their links into a lower power state,
using the device-initiated LPM, after finishing the last packet of their
data transfer.

If we enable the idle timeouts for the parent hubs to enable
hub-initiated LPM, we will get a lot of useless LPM packets on the bus
as the devices reject LPM transitions when they're in the middle of
receiving data.  Worse, some devices might blindly accept the
hub-initiated LPM and power down their radios while they're in the
middle of receiving a transmission.

The Intel Windows folks are disabling hub-initiated LPM for all USB
communications devices under a xHCI USB 3.0 host.  In order to keep
the Linux behavior as close as possible to Windows, we need to do the
same in Linux.

Set the disable_hub_initiated_lpm flag for for all USB communications
drivers.  I know there aren't currently any USB 3.0 devices that
implement these class specifications, but we should be ready if they do.

Signed-off-by: Sarah Sharp &lt;sarah.a.sharp@linux.intel.com&gt;
Cc: Marcel Holtmann &lt;marcel@holtmann.org&gt;
Cc: Gustavo Padovan &lt;gustavo@padovan.org&gt;
Cc: Johan Hedberg &lt;johan.hedberg@gmail.com&gt;
Cc: Hansjoerg Lipp &lt;hjlipp@web.de&gt;
Cc: Tilman Schmidt &lt;tilman@imap.cc&gt;
Cc: Karsten Keil &lt;isdn@linux-pingi.de&gt;
Cc: Peter Korsgaard &lt;jacmet@sunsite.dk&gt;
Cc: Jan Dumon &lt;j.dumon@option.com&gt;
Cc: Petko Manolov &lt;petkan@users.sourceforge.net&gt;
Cc: Steve Glendinning &lt;steve.glendinning@smsc.com&gt;
Cc: "John W. Linville" &lt;linville@tuxdriver.com&gt;
Cc: Kalle Valo &lt;kvalo@qca.qualcomm.com&gt;
Cc: "Luis R. Rodriguez" &lt;mcgrof@qca.qualcomm.com&gt;
Cc: Jouni Malinen &lt;jouni@qca.qualcomm.com&gt;
Cc: Vasanthakumar Thiagarajan &lt;vthiagar@qca.qualcomm.com&gt;
Cc: Senthil Balasubramanian &lt;senthilb@qca.qualcomm.com&gt;
Cc: Christian Lamparter &lt;chunkeey@googlemail.com&gt;
Cc: Brett Rudley &lt;brudley@broadcom.com&gt;
Cc: Roland Vossen &lt;rvossen@broadcom.com&gt;
Cc: Arend van Spriel &lt;arend@broadcom.com&gt;
Cc: "Franky (Zhenhui) Lin" &lt;frankyl@broadcom.com&gt;
Cc: Kan Yan &lt;kanyan@broadcom.com&gt;
Cc: Dan Williams &lt;dcbw@redhat.com&gt;
Cc: Jussi Kivilinna &lt;jussi.kivilinna@mbnet.fi&gt;
Cc: Ivo van Doorn &lt;IvDoorn@gmail.com&gt;
Cc: Gertjan van Wingerde &lt;gwingerde@gmail.com&gt;
Cc: Helmut Schaa &lt;helmut.schaa@googlemail.com&gt;
Cc: Herton Ronaldo Krzesinski &lt;herton@canonical.com&gt;
Cc: Hin-Tak Leung &lt;htl10@users.sourceforge.net&gt;
Cc: Larry Finger &lt;Larry.Finger@lwfinger.net&gt;
Cc: Chaoming Li &lt;chaoming_li@realsil.com.cn&gt;
Cc: Daniel Drake &lt;dsd@gentoo.org&gt;
Cc: Ulrich Kunitz &lt;kune@deine-taler.de&gt;
Signed-off-by: Sarah Sharp &lt;sarah.a.sharp@linux.intel.com&gt;
</content>
</entry>
<entry>
<title>USB: convert drivers/bluetooth/* to use module_usb_driver()</title>
<updated>2011-11-18T17:47:34Z</updated>
<author>
<name>Greg Kroah-Hartman</name>
<email>gregkh@suse.de</email>
</author>
<published>2011-11-18T17:47:34Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=93f1508cffc3d578c2b7bbbf298dc52326b80777'/>
<id>urn:sha1:93f1508cffc3d578c2b7bbbf298dc52326b80777</id>
<content type='text'>
This converts the drivers in drivers/bluetooth/* to use the
module_usb_driver() macro which makes the code smaller and a bit
simpler.

Added bonus is that it removes some unneeded kernel log messages about
drivers loading and/or unloading.

Cc: Marcel Holtmann &lt;marcel@holtmann.org&gt;
Cc: "Gustavo F. Padovan" &lt;padovan@profusion.mobi&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
</content>
</entry>
<entry>
<title>Bluetooth: bcm203x: Use GFP_KERNEL in workqueue</title>
<updated>2011-10-31T19:51:57Z</updated>
<author>
<name>David Herrmann</name>
<email>dh.herrmann@googlemail.com</email>
</author>
<published>2011-10-25T19:13:36Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=b91a4e3e3a16085623d47f03b338d9b74954ac67'/>
<id>urn:sha1:b91a4e3e3a16085623d47f03b338d9b74954ac67</id>
<content type='text'>
A workqueue is allowed to sleep so we can safely use GFP_KERNEL instead of
GFP_ATOMIC. This is still legacy code when the driver used timer BHs and not a
worqueue.

Signed-off-by: David Herrmann &lt;dh.herrmann@googlemail.com&gt;
Acked-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
Signed-off-by: Gustavo F. Padovan &lt;padovan@profusion.mobi&gt;
</content>
</entry>
<entry>
<title>Bluetooth: bcm203x: Fix race condition on disconnect</title>
<updated>2011-10-31T19:51:37Z</updated>
<author>
<name>David Herrmann</name>
<email>dh.herrmann@googlemail.com</email>
</author>
<published>2011-10-26T09:13:13Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=fc501ad7a10a356819505b1e526079d47fdebc2c'/>
<id>urn:sha1:fc501ad7a10a356819505b1e526079d47fdebc2c</id>
<content type='text'>
When disconnecting a bcm203x device we kill and destroy the usb-urb, however,
there might still be a pending work-structure which resubmits the now invalid
urb. To avoid this race condition, we simply set a shutdown-flag and
synchronously kill the worker first.

This also adds a comment to all schedule_work()s, as it is really not clear
that they are used as replacement for short timers (which can be seen in the git
history).

Signed-off-by: David Herrmann &lt;dh.herrmann@googlemail.com&gt;
Acked-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
Signed-off-by: Gustavo F. Padovan &lt;padovan@profusion.mobi&gt;
</content>
</entry>
<entry>
<title>Bluetooth: Use kmemdup for drivers</title>
<updated>2010-07-21T17:39:06Z</updated>
<author>
<name>Julia Lawall</name>
<email>julia@diku.dk</email>
</author>
<published>2010-05-15T21:19:15Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=5ee283c063a236b19e4582c675a2d8d615d5809c'/>
<id>urn:sha1:5ee283c063a236b19e4582c675a2d8d615d5809c</id>
<content type='text'>
Use kmemdup when some other buffer is immediately copied into the
allocated region.

A simplified version of the semantic patch that makes this change is as
follows: (http://coccinelle.lip6.fr/)

// &lt;smpl&gt;
@@
expression from,to,size,flag;
statement S;
@@

-  to = \(kmalloc\|kzalloc\)(size,flag);
+  to = kmemdup(from,size,flag);
   if (to==NULL || ...) S
-  memcpy(to, from, size);
// &lt;/smpl&gt;

Signed-off-by: Julia Lawall &lt;julia@diku.dk&gt;
Acked-by: Gustavo F. Padovan &lt;padovan@profusion.mobi&gt;
Signed-off-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
</content>
</entry>
<entry>
<title>Bluetooth: Make USB device id constant</title>
<updated>2010-02-27T13:05:38Z</updated>
<author>
<name>Márton Németh</name>
<email>nm127@freemail.hu</email>
</author>
<published>2010-01-10T12:39:15Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=8978111e2d148f75bd5e329a14600feadc567381'/>
<id>urn:sha1:8978111e2d148f75bd5e329a14600feadc567381</id>
<content type='text'>
The id_table field of the struct usb_device_id is constant in &lt;linux/usb.h&gt;
so it is worth to make bcm203x_table also constant.

The semantic match that finds this kind of pattern is as follows:
(http://coccinelle.lip6.fr/)

// &lt;smpl&gt;
@r@
disable decl_init,const_decl_init;
identifier I1, I2, x;
@@
	struct I1 {
	  ...
	  const struct I2 *x;
	  ...
	};
@s@
identifier r.I1, y;
identifier r.x, E;
@@
	struct I1 y = {
	  .x = E,
	};
@c@
identifier r.I2;
identifier s.E;
@@
	const struct I2 E[] = ... ;
@depends on !c@
identifier r.I2;
identifier s.E;
@@
+	const
	struct I2 E[] = ...;
// &lt;/smpl&gt;

Signed-off-by: Márton Németh &lt;nm127@freemail.hu&gt;
Cc: Julia Lawall &lt;julia@diku.dk&gt;
Cc: cocci@diku.dk
Signed-off-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
</content>
</entry>
</feed>
