<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/bluetooth, branch v4.5</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/
</subtitle>
<id>https://git.shady.money/linux/atom?h=v4.5</id>
<link rel='self' href='https://git.shady.money/linux/atom?h=v4.5'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/'/>
<updated>2016-01-06T15:37:14Z</updated>
<entry>
<title>Bluetooth: btmrvl: don't send data to firmware while processing suspend</title>
<updated>2016-01-06T15:37:14Z</updated>
<author>
<name>Chin-Ran Lo</name>
<email>crlo@marvell.com</email>
</author>
<published>2016-01-06T14:34:38Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=8cf60cf238ce1bea38593321e6ea8561fc32e38d'/>
<id>urn:sha1:8cf60cf238ce1bea38593321e6ea8561fc32e38d</id>
<content type='text'>
Usually when driver sends data to firmware it receives TX_DONE
(DN_LD_HOST_INT_STATUS) interrupt from firmware right away.
It's also observed that some times the fireware could delay
sending DN_LD_HOST_INT_STATUS interrupt. If driver sends data to
firmware during suspend processing and the TX_DONE interrupt is
delayed, it may come back at wrong time when SDIO host driver is
in the middle of suspending.

Block any data from stack while suspending. Also skip sending
data that are already in driver tx_queue.

Don't purge the skb queue on suspend to avoid intermittent music
after system resumes from S3.

Signed-off-by: Chin-Ran Lo &lt;crlo@marvell.com&gt;
Signed-off-by: Amitkumar Karwar &lt;akarwar@marvell.com&gt;
Signed-off-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
</content>
</entry>
<entry>
<title>Bluetooth: btmrvl: max out host sleep parameter 'gap'</title>
<updated>2016-01-06T15:37:14Z</updated>
<author>
<name>Chin-Ran Lo</name>
<email>crlo@marvell.com</email>
</author>
<published>2016-01-06T14:34:37Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=d716892f0827dd29ae2488ab3005dfc84ff8fed0'/>
<id>urn:sha1:d716892f0827dd29ae2488ab3005dfc84ff8fed0</id>
<content type='text'>
For gpio=0xff (wake up host through SDIO interface) case,
gap=0xff means no delay (same as gap=0) for incoming data packet
to be sent to host after host sleep is activated.
Change it to the maximum delay to reduce the chance that RX
interrupt could be delivered while host controller suspends.

Signed-off-by: Chin-Ran Lo &lt;crlo@marvell.com&gt;
Signed-off-by: Amitkumar Karwar &lt;akarwar@marvell.com&gt;
Signed-off-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
</content>
</entry>
<entry>
<title>Bluetooth: btmrvl: fix hung task warning dump</title>
<updated>2016-01-04T18:25:56Z</updated>
<author>
<name>Chin-Ran Lo</name>
<email>crlo@marvell.com</email>
</author>
<published>2015-12-29T12:26:33Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=86f7ac77d4035e22ec7e58dcdb96327e2ecc3a9b'/>
<id>urn:sha1:86f7ac77d4035e22ec7e58dcdb96327e2ecc3a9b</id>
<content type='text'>
It's been observed that when bluetooth driver fails to
activate the firmware, below hung task warning dump is
displayed after 120 seconds.

[   36.461022] Bluetooth: vendor=0x2df, device=0x912e, class=255, fn=2
[   56.512128] Bluetooth: FW failed to be active in time!
[   56.517264] Bluetooth: Downloading firmware failed!
[  240.252176] INFO: task kworker/3:2:129 blocked for more than 120 seconds.
[  240.258931]       Not tainted 3.18.0 #254
[  240.262972] "echo 0 &gt; /proc/sys/kernel/hung_task_timeout_secs" disables this message.
[  240.270751] kworker/3:2     D ffffffc000205760     0   129      2 0x00000000
[  240.277825] Workqueue: events request_firmware_work_func
[  240.283134] Call trace:
[  240.285581] [&lt;ffffffc000205760&gt;] __switch_to+0x80/0x8c
[  240.290693] [&lt;ffffffc00088dae0&gt;] __schedule+0x540/0x7b8
[  240.295921] [&lt;ffffffc00088ddd0&gt;] schedule+0x78/0x84
[  240.300764] [&lt;ffffffc0006dfd48&gt;] __mmc_claim_host+0xe8/0x1c8
[  240.306395] [&lt;ffffffc0006edd6c&gt;] sdio_claim_host+0x74/0x84
[  240.311840] [&lt;ffffffbffc163d08&gt;] 0xffffffbffc163d08
[  240.316685] [&lt;ffffffbffc165104&gt;] 0xffffffbffc165104
[  240.321524] [&lt;ffffffbffc130cf8&gt;] mwifiex_dnld_fw+0x98/0x110 [mwifiex]
[  240.327918] [&lt;ffffffbffc12ee88&gt;] mwifiex_remove_card+0x2c4/0x5fc [mwifiex]
[  240.334741] [&lt;ffffffc000596780&gt;] request_firmware_work_func+0x44/0x80
[  240.341127] [&lt;ffffffc00023b934&gt;] process_one_work+0x2ec/0x50c
[  240.346831] [&lt;ffffffc00023c6a0&gt;] worker_thread+0x350/0x470
[  240.352272] [&lt;ffffffc0002419bc&gt;] kthread+0xf0/0xfc
[  240.357019] 2 locks held by kworker/3:2/129:
[  240.361248]  #0:  ("events"){.+.+.+}, at: [&lt;ffffffc00023b840&gt;] process_one_work+0x1f8/0x50c
[  240.369562]  #1:  ((&amp;fw_work-&gt;work)){+.+.+.}, at: [&lt;ffffffc00023b840&gt;] process_one_work+0x1f8/0x50c
[  240.378589]   task                        PC stack   pid father
[  240.384501] kworker/1:1     D ffffffc000205760     0    40      2 0x00000000
[  240.391524] Workqueue: events mtk_atomic_work
[  240.395884] Call trace:
[  240.398317] [&lt;ffffffc000205760&gt;] __switch_to+0x80/0x8c
[  240.403448] [&lt;ffffffc00027279c&gt;] lock_acquire+0x128/0x164
[  240.408821] kworker/3:2     D ffffffc000205760     0   129      2 0x00000000
[  240.415867] Workqueue: events request_firmware_work_func
[  240.421138] Call trace:
[  240.423589] [&lt;ffffffc000205760&gt;] __switch_to+0x80/0x8c
[  240.428688] [&lt;ffffffc00088dae0&gt;] __schedule+0x540/0x7b8
[  240.433886] [&lt;ffffffc00088ddd0&gt;] schedule+0x78/0x84
[  240.438732] [&lt;ffffffc0006dfd48&gt;] __mmc_claim_host+0xe8/0x1c8
[  240.444361] [&lt;ffffffc0006edd6c&gt;] sdio_claim_host+0x74/0x84
[  240.449801] [&lt;ffffffbffc163d08&gt;] 0xffffffbffc163d08
[  240.454649] [&lt;ffffffbffc165104&gt;] 0xffffffbffc165104
[  240.459486] [&lt;ffffffbffc130cf8&gt;] mwifiex_dnld_fw+0x98/0x110 [mwifiex]
[  240.465882] [&lt;ffffffbffc12ee88&gt;] mwifiex_remove_card+0x2c4/0x5fc [mwifiex]
[  240.472705] [&lt;ffffffc000596780&gt;] request_firmware_work_func+0x44/0x80
[  240.479090] [&lt;ffffffc00023b934&gt;] process_one_work+0x2ec/0x50c
[  240.484794] [&lt;ffffffc00023c6a0&gt;] worker_thread+0x350/0x470
[  240.490231] [&lt;ffffffc0002419bc&gt;] kthread+0xf0/0xfc

This patch adds missing sdio_release_host() call so that wlan driver
thread can claim sdio host.

Fixes: 4863e4cc31d647e1 ("Bluetooth: btmrvl: release sdio bus after firmware is up")
Signed-off-by: Chin-Ran Lo &lt;crlo@marvell.com&gt;
Signed-off-by: Amitkumar Karwar &lt;akarwar@marvell.com&gt;
Signed-off-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
</content>
</entry>
<entry>
<title>Bluetooth: hci_bcm: new ACPI IDs</title>
<updated>2016-01-04T18:22:57Z</updated>
<author>
<name>Heikki Krogerus</name>
<email>heikki.krogerus@linux.intel.com</email>
</author>
<published>2016-01-04T12:23:22Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=adbdeae5cece1d888a1542edfe9e1c6f8884fef8'/>
<id>urn:sha1:adbdeae5cece1d888a1542edfe9e1c6f8884fef8</id>
<content type='text'>
These are used at least by Acer with BCM43241.

Signed-off-by: Heikki Krogerus &lt;heikki.krogerus@linux.intel.com&gt;
Signed-off-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
</content>
</entry>
<entry>
<title>Bluetooth: hci_bcm: move all Broadcom ACPI IDs to BCM HCI driver</title>
<updated>2016-01-04T18:22:05Z</updated>
<author>
<name>Heikki Krogerus</name>
<email>heikki.krogerus@linux.intel.com</email>
</author>
<published>2016-01-04T12:23:21Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=d3d20725407955d0bb107939f23535d2e7dadbee'/>
<id>urn:sha1:d3d20725407955d0bb107939f23535d2e7dadbee</id>
<content type='text'>
The IDs should all be for Broadcom BCM43241 module, and
hci_bcm is now the proper driver for them. This removes one
of two different ways of handling PM with the module.

Cc: Johannes Berg &lt;johannes@sipsolutions.net&gt;
Signed-off-by: Heikki Krogerus &lt;heikki.krogerus@linux.intel.com&gt;
Signed-off-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
</content>
</entry>
<entry>
<title>Bluetooth: bfusb: Fix the return error code</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:20Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=7ddb69222d0fdc0bc83b60dbb21d9864ebf2907e'/>
<id>urn:sha1:7ddb69222d0fdc0bc83b60dbb21d9864ebf2907e</id>
<content type='text'>
-ENOMEM is the appropriate error code instead of -EIO.

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: bfusb: 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:19Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=f71e823b8776b3ce0073087d7b8ec8a7d31fe818'/>
<id>urn:sha1:f71e823b8776b3ce0073087d7b8ec8a7d31fe818</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: 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://git.shady.money/linux/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: hci_bcm: Add BCM2E65 ACPI ID</title>
<updated>2015-12-20T13:15:25Z</updated>
<author>
<name>Luka Karinja</name>
<email>luka.karinja@gmail.com</email>
</author>
<published>2015-12-20T12:36:06Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=806f50c729c2d9f80500014f1d20c0ac74e66082'/>
<id>urn:sha1:806f50c729c2d9f80500014f1d20c0ac74e66082</id>
<content type='text'>
Add BCM2E65 device in acpi_device_id table used on Asus T100TAF.

Signed-off-by: Luka Karinja &lt;luka.karinja@gmail.com&gt;
Signed-off-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
</content>
</entry>
<entry>
<title>Bluetooth: h5: Do not initialize Configuration field</title>
<updated>2015-12-10T18:19:17Z</updated>
<author>
<name>Andrei Emeltchenko</name>
<email>andrei.emeltchenko@intel.com</email>
</author>
<published>2015-12-10T15:03:43Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=87a6b9bd6306e0efd5eedbd68042eee36184dbd7'/>
<id>urn:sha1:87a6b9bd6306e0efd5eedbd68042eee36184dbd7</id>
<content type='text'>
Initializing Configuration field in H5 Config message to 0x01 gives
wrong impression that the value is used and needed. Later on the whole
field is rewritten with h5_cfg_field().

Signed-off-by: Andrei Emeltchenko &lt;andrei.emeltchenko@intel.com&gt;
Signed-off-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
</content>
</entry>
</feed>
