linux-bluetooth.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Andreas Kemnade <andreas@kemnade.info>
To: Carey Sonsino <csonsino@gmail.com>
Cc: Marcel Holtmann <marcel@holtmann.org>,
	Johan Hedberg <johan.hedberg@gmail.com>,
	Jamie Mccrae <Jamie.Mccrae@lairdconnect.com>,
	"linux-bluetooth@vger.kernel.org"
	<linux-bluetooth@vger.kernel.org>
Subject: Re: [PATCH 1/1] bluetooth: update default BLE connection interval bounds
Date: Fri, 23 Aug 2019 15:45:59 +0200	[thread overview]
Message-ID: <20190823154559.1f203fac@aktux> (raw)
In-Reply-To: <1c707bb9-999b-7ca3-3c91-7b183dacfdd5@gmail.com>

Hi,

On Tue, 20 Aug 2019 11:01:41 -0600
Carey Sonsino <csonsino@gmail.com> wrote:

> Update the default BLE connection interval min/max bounds to the full 
> range of permitted values (6-3200, corresponding to 7.25-4000ms).
> 
> Commit c49a8682fc5d298d44e8d911f4fa14690ea9485e introduced a bounds 
> check on connection interval update requests, but the default min/max 
> values were left at 24-40 (30-50ms) which caused problems for devices 
> that want to negotiate connection intervals outside of those bounds.
> 
> Setting the default min/max connection interval to the full allowable 
> range in the bluetooth specification restores the default Linux behavior 
> of allowing remote devices to negotiate their desired connection 
> interval, while still permitting the system administrator to later 
> narrow the range.
> 
> Fixes c49a8682fc5d: (validate BLE connection interval updates)
> 
Trying pair XX:XX:XX:XX:XX:XX in bluetoothctl 
leads to create connection commands containing
le_conn_max_interval > le_supv_timeout (4000ms > 420ms) which the
controller does not like and is imho not allowed.

< HCI Command: LE Create Connection (0x08|0x000d) plen 25
    bdaddr XX:XX:XX:XX:XX:XX type 0
    interval 96 window 96 initiator_filter 0
    own_bdaddr_type 0 min_interval 6 max_interval 3200
    latency 0 supervision_to 42 min_ce 0 max_ce 0
> HCI Event: Command Status (0x0f) plen 4
    LE Create Connection (0x08|0x000d) status 0x12 ncmd 1
    Error: Invalid HCI Command Parameters


> Signed-off-by: Carey Sonsino <csonsino@gmail.com>
> 
> ---
> 
> diff --git a/net/bluetooth/hci_core.c b/net/bluetooth/hci_core.c
> index 04bc79359a17..f4f2f712c527 100644
> --- a/net/bluetooth/hci_core.c
> +++ b/net/bluetooth/hci_core.c
> @@ -3181,8 +3181,8 @@ struct hci_dev *hci_alloc_dev(void)
>       hdev->le_adv_max_interval = 0x0800;
>       hdev->le_scan_interval = 0x0060;
>       hdev->le_scan_window = 0x0030;
> -    hdev->le_conn_min_interval = 0x0018;
> -    hdev->le_conn_max_interval = 0x0028;
> +    hdev->le_conn_min_interval = 0x0006;
> +    hdev->le_conn_max_interval = 0x0c80;
>       hdev->le_conn_latency = 0x0000;
>       hdev->le_supv_timeout = 0x002a;
>       hdev->le_def_tx_len = 0x001b;

hmm, what happened with the tabs here? I needed to manually apply it.

Regards,
Andreas

  parent reply	other threads:[~2019-08-23 13:46 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-08-20 17:01 [PATCH 1/1] bluetooth: update default BLE connection interval bounds Carey Sonsino
2019-08-23 10:52 ` Johan Hedberg
2019-08-23 13:45 ` Andreas Kemnade [this message]
2019-08-23 17:50   ` Carey Sonsino

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190823154559.1f203fac@aktux \
    --to=andreas@kemnade.info \
    --cc=Jamie.Mccrae@lairdconnect.com \
    --cc=csonsino@gmail.com \
    --cc=johan.hedberg@gmail.com \
    --cc=linux-bluetooth@vger.kernel.org \
    --cc=marcel@holtmann.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).