<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/include/net/bluetooth, branch v4.3</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.3</id>
<link rel='self' href='https://git.shady.money/linux/atom?h=v4.3'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/'/>
<updated>2015-08-10T19:36:13Z</updated>
<entry>
<title>Bluetooth: add hci_connect_le_scan</title>
<updated>2015-08-10T19:36:13Z</updated>
<author>
<name>Jakub Pawlowski</name>
<email>jpawlowski@google.com</email>
</author>
<published>2015-08-07T18:22:53Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=f75113a26008980ca13834fb6573145523596776'/>
<id>urn:sha1:f75113a26008980ca13834fb6573145523596776</id>
<content type='text'>
Currently, when trying to connect to already paired device that just
rotated its RPA MAC address, old address would be used and connection
would fail. In order to fix that, kernel must scan and receive
advertisement with fresh RPA before connecting.

This patch adds hci_connect_le_scan with dependencies, new method that
will be used to connect to remote LE devices. Instead of just sending
connect request, it adds a device to whitelist. Later patches will make
use of this whitelist to send conenct request when advertisement is
received, and properly handle timeouts.

Signed-off-by: Jakub Pawlowski &lt;jpawlowski@google.com&gt;
Signed-off-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
</content>
</entry>
<entry>
<title>Bluetooth: add hci_lookup_le_connect</title>
<updated>2015-08-10T19:36:13Z</updated>
<author>
<name>Jakub Pawlowski</name>
<email>jpawlowski@google.com</email>
</author>
<published>2015-08-07T18:22:52Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=e7d9ab731ac7babaf2e1b7b5e2280f5f555d263f'/>
<id>urn:sha1:e7d9ab731ac7babaf2e1b7b5e2280f5f555d263f</id>
<content type='text'>
This patch adds hci_lookup_le_connect method, that will be used to check
wether outgoing le connection attempt is in progress.

Signed-off-by: Jakub Pawlowski &lt;jpawlowski@google.com&gt;
Signed-off-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
</content>
</entry>
<entry>
<title>Bluetooth: preparation for new connect procedure</title>
<updated>2015-08-10T19:36:13Z</updated>
<author>
<name>Jakub Pawlowski</name>
<email>jpawlowski@google.com</email>
</author>
<published>2015-08-07T18:22:51Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=158e92185075184ebc5f25bab61fdd598693e28d'/>
<id>urn:sha1:158e92185075184ebc5f25bab61fdd598693e28d</id>
<content type='text'>
Currently, when trying to connect to already paired device that just
rotated its RPA MAC address, old address would be used and connection
would fail. In order to fix that, kernel must scan and receive
advertisement with fresh RPA before connecting.

This patch adds some fields to hci_conn_params, in preparation to new
connect procedure.

explicit_connect will be used to override any current auto_connect action,
and connect to device when ad is received.

HCI_AUTO_CONN_EXPLICIT was added to auto_connect enum. When this value
will be used, explicit connect is the only action, and params can be
removed after successful connection.

HCI_CONN_SCANNING is added to hci_conn flags. When it's set, connect is
scan phase. It gets cleared when advertisement is received, and
HCI_OP_LE_CREATE_CONN is sent.

Signed-off-by: Jakub Pawlowski &lt;jpawlowski@google.com&gt;
Signed-off-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
</content>
</entry>
<entry>
<title>Bluetooth: hci_check_conn_params() check proper range</title>
<updated>2015-07-23T15:10:51Z</updated>
<author>
<name>Seungyoun Ju</name>
<email>sy39.ju@samsung.com</email>
</author>
<published>2015-07-13T08:28:13Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=8757825b128e71319150219b0745d3ecb87f34aa'/>
<id>urn:sha1:8757825b128e71319150219b0745d3ecb87f34aa</id>
<content type='text'>
Slave latency range has been changed in Core Spec. 4.2 by Erratum 5419
of ESR08_V1.0.0. And it should be applied to Core Spec. 4.0 and 4.1.

Before:
   connSlaveLatency &lt;= ((connSupervisionTimeout / connIntervalMax) - 1)

After:
   connSlaveLatency &lt;= ((connSupervisionTimeout / (connIntervalMax*2)) - 1)

This patch makes hci_check_conn_params() check the allowable slave
latency range using the changed way.

Signed-off-by: Seungyoun Ju &lt;sy39.ju@samsung.com&gt;
Signed-off-by: Johan Hedberg &lt;johan.hedberg@intel.com&gt;
</content>
</entry>
<entry>
<title>Bluetooth: __l2cap_wait_ack() add defensive timeout</title>
<updated>2015-07-23T15:10:51Z</updated>
<author>
<name>Dean Jenkins</name>
<email>Dean_Jenkins@mentor.com</email>
</author>
<published>2015-06-23T16:59:39Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=e432c72c464d2deb6c66d1e2a5f548dc1f0ef4dc'/>
<id>urn:sha1:e432c72c464d2deb6c66d1e2a5f548dc1f0ef4dc</id>
<content type='text'>
Add a timeout to prevent the do while loop running in an
infinite loop. This ensures that the channel will be
instructed to close within 10 seconds so prevents
l2cap_sock_shutdown() getting stuck forever.

Returns -ENOLINK when the timeout is reached. The channel
will be subequently closed and not all data will be ACK'ed.

Signed-off-by: Dean Jenkins &lt;Dean_Jenkins@mentor.com&gt;
Signed-off-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
</content>
</entry>
<entry>
<title>Bluetooth: __l2cap_wait_ack() use msecs_to_jiffies()</title>
<updated>2015-07-23T15:10:51Z</updated>
<author>
<name>Dean Jenkins</name>
<email>Dean_Jenkins@mentor.com</email>
</author>
<published>2015-06-23T16:59:38Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=cb02a25583b59ce48267472cd092485d754964f9'/>
<id>urn:sha1:cb02a25583b59ce48267472cd092485d754964f9</id>
<content type='text'>
Use msecs_to_jiffies() instead of using HZ so that it
is easier to specify the time in milliseconds.

Also add a #define L2CAP_WAIT_ACK_POLL_PERIOD to specify the 200ms
polling period so that it is defined in a single place.

Signed-off-by: Dean Jenkins &lt;Dean_Jenkins@mentor.com&gt;
Signed-off-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
</content>
</entry>
<entry>
<title>Bluetooth: hci_core: increase max adv inst</title>
<updated>2015-06-18T16:11:53Z</updated>
<author>
<name>Florian Grandel</name>
<email>fgrandel@gmail.com</email>
</author>
<published>2015-06-18T01:16:53Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=db25be6657a56ba2d68aae1f90d796f527f65689'/>
<id>urn:sha1:db25be6657a56ba2d68aae1f90d796f527f65689</id>
<content type='text'>
Now that all preconditions are present for actual multi-advertising, the
number of allowed advertising instances can be larger than one. This
patch increases the number of allowed advertising instances to 5.

Signed-off-by: Florian Grandel &lt;fgrandel@gmail.com&gt;
Signed-off-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
</content>
</entry>
<entry>
<title>Bluetooth: hci_core: remove obsolete adv_instance</title>
<updated>2015-06-18T16:11:53Z</updated>
<author>
<name>Florian Grandel</name>
<email>fgrandel@gmail.com</email>
</author>
<published>2015-06-18T01:16:52Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=d4c5af8f71c8104504a83f7c71911550ebe43ac3'/>
<id>urn:sha1:d4c5af8f71c8104504a83f7c71911550ebe43ac3</id>
<content type='text'>
Now that the obsolete adv_instance is no longer being referenced
anywhere in the code it can be removed without breaking the build.

Signed-off-by: Florian Grandel &lt;fgrandel@gmail.com&gt;
Signed-off-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
</content>
</entry>
<entry>
<title>Bluetooth: mgmt/hci_core: multi-adv for add_advertising*()</title>
<updated>2015-06-18T16:11:52Z</updated>
<author>
<name>Florian Grandel</name>
<email>fgrandel@gmail.com</email>
</author>
<published>2015-06-18T01:16:47Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=fffd38bca51c9a1c00508b754ab66edb6f39cf37'/>
<id>urn:sha1:fffd38bca51c9a1c00508b754ab66edb6f39cf37</id>
<content type='text'>
The add_advertising() and add_advertising_complete() functions reference
the now obsolete hdev-&gt;adv_instance struct. Both methods are being
refactored to access the dynamic advertising instance list instead.

This patch also introduces all logic necessary to actually deal with
multiple instance advertising. Notably the mgmt_adv_inst_expired() and
schedule_adv_inst() method are being referenced to schedule instances in
a round robin fashion.

This patch also introduces a "pending" flag into the adv_info struct.
This is necessary to identify and remove recently added advertising
instances when the HCI commands return with an error status code.
Otherwise new advertising instances could be leaked without properly
informing userspace about their existence.

Signed-off-by: Florian Grandel &lt;fgrandel@gmail.com&gt;
Signed-off-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
</content>
</entry>
<entry>
<title>Bluetooth: hci_core/mgmt: move adv timeout to hdev</title>
<updated>2015-06-18T16:11:51Z</updated>
<author>
<name>Florian Grandel</name>
<email>fgrandel@gmail.com</email>
</author>
<published>2015-06-18T01:16:35Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=5d900e4601391576a3c0644d7fcad1ebf41a516e'/>
<id>urn:sha1:5d900e4601391576a3c0644d7fcad1ebf41a516e</id>
<content type='text'>
Currently the delayed work managing advertising duration and timeout is
part of the advertising instance structure. This is not correct as only
a single instance can be advertised at any given time. To implement
round robin advertising a single delayed work structure is needed.

To fix this the delayed work structure is being moved to the hci_dev
structure. The instance specific variable is renamed to "remaining_time"
to make it clear that this is the remaining lifetime of the instance and
not the current advertising timeout.

Signed-off-by: Florian Grandel &lt;fgrandel@gmail.com&gt;
Signed-off-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
</content>
</entry>
</feed>
