]> www.infradead.org Git - users/jedix/linux-maple.git/commit
Bluetooth: separate CIS_LINK and BIS_LINK link types
authorPauli Virtanen <pav@iki.fi>
Sat, 3 May 2025 14:08:21 +0000 (17:08 +0300)
committerLuiz Augusto von Dentz <luiz.von.dentz@intel.com>
Wed, 21 May 2025 14:29:28 +0000 (10:29 -0400)
commit23205562ffc8de20f57afdd984858cab29e77968
tree2b2c685e93e127316e64d2c99801b325583d03bd
parent5bd5c716f7ec3e25d8d3b8a7566e192a26f9c7ce
Bluetooth: separate CIS_LINK and BIS_LINK link types

Use separate link type id for unicast and broadcast ISO connections.
These connection types are handled with separate HCI commands, socket
API is different, and hci_conn has union fields that are different in
the two cases, so they shall not be mixed up.

Currently in most places it is attempted to distinguish ucast by
bacmp(&c->dst, BDADDR_ANY) but it is wrong as dst is set for bcast sink
hci_conn in iso_conn_ready(). Additionally checking sync_handle might be
OK, but depends on details of bcast conn configuration flow.

To avoid complicating it, use separate link types.

Fixes: f764a6c2c1e4 ("Bluetooth: ISO: Add broadcast support")
Signed-off-by: Pauli Virtanen <pav@iki.fi>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
include/net/bluetooth/hci.h
include/net/bluetooth/hci_core.h
net/bluetooth/hci_conn.c
net/bluetooth/hci_core.c
net/bluetooth/hci_event.c
net/bluetooth/hci_sync.c
net/bluetooth/iso.c
net/bluetooth/mgmt.c