Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

Bluetooth: allow scatternet connections if supported.

This change allows scatternet connections to be created if the
controller reports support and the HCI_QUIRK_VALID_LE_STATES indicates
that the reported LE states can be trusted.

Signed-off-by: Alain Michaud <alainm@chromium.org>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>

authored by

Alain Michaud and committed by
Marcel Holtmann
4364f2e9 22091585

+3 -1
+3 -1
net/bluetooth/hci_event.c
··· 5288 5288 /* Most controller will fail if we try to create new connections 5289 5289 * while we have an existing one in slave role. 5290 5290 */ 5291 - if (hdev->conn_hash.le_num_slave > 0) 5291 + if (hdev->conn_hash.le_num_slave > 0 && 5292 + (!test_bit(HCI_QUIRK_VALID_LE_STATES, &hdev->quirks) || 5293 + !(hdev->le_states[3] & 0x10))) 5292 5294 return NULL; 5293 5295 5294 5296 /* If we're not connectable only connect devices that we have in