From: Luiz Augusto von Dentz <luiz.von.dentz@xxxxxxxxx> This introduces the initial support for Bluetooth 5.2 features: * ISO channels: + CIS/Unicast support + ISO socket family with QoS support - BIS/Broadcast not yet supported * L2CAP Enhanced Credit Based Flow Control Mode + Support all new procedures + New L2CAP socket mode - Initiating multiple connections at once does not map to any existing socket APIs * Monitor: + ISO packets support * Drivers: + H4 ISO packets support * Emulator: + CIS/Unicast emulation support - BIS/Broadcast emulation not yet supported * Userspace support to follow once Kernel changes are merged. Bluetooth 5.2 spec: https://www.bluetooth.org/docman/handlers/downloaddoc.ashx?doc_id=478726 ChangeLog: - v2: Only attempt to fix up packet type when an ISO connection exists, remove L2CAP_ECRED_MASK. - v3: Dropped USB changes since that has not clear way to support ISO packets with existing endpoints. Renamed ECRED to EXT_FLOWCTL. Luiz Augusto von Dentz (8): Bluetooth: Add definitions for CIS connections Bluetooth: Add initial implementation of CIS connections Bluetooth: L2CAP: Add definitions for Enhanced Credit Based Mode Bluetooth: L2CAP: Add initial code for Enhanced Credit Based Mode Bluetooth: hci_vhci: Add support for ISO packets Bluetooth: monitor: Add support for ISO packets Bluetooth: Make use of __check_timeout on hci_sched_le Bluetooth: hci_h4: Add support for ISO packets drivers/bluetooth/hci_h4.c | 1 + drivers/bluetooth/hci_uart.h | 7 + drivers/bluetooth/hci_vhci.c | 1 + include/net/bluetooth/bluetooth.h | 35 + include/net/bluetooth/hci.h | 157 ++++ include/net/bluetooth/hci_core.h | 68 +- include/net/bluetooth/hci_mon.h | 2 + include/net/bluetooth/hci_sock.h | 2 + include/net/bluetooth/iso.h | 36 + include/net/bluetooth/l2cap.h | 45 + net/bluetooth/Kconfig | 1 + net/bluetooth/Makefile | 1 + net/bluetooth/af_bluetooth.c | 12 +- net/bluetooth/hci_conn.c | 169 ++++ net/bluetooth/hci_core.c | 254 ++++-- net/bluetooth/hci_event.c | 230 +++++ net/bluetooth/hci_sock.c | 6 + net/bluetooth/iso.c | 1393 +++++++++++++++++++++++++++++ net/bluetooth/l2cap_core.c | 510 ++++++++++- net/bluetooth/l2cap_sock.c | 39 +- 20 files changed, 2877 insertions(+), 92 deletions(-) create mode 100644 include/net/bluetooth/iso.h create mode 100644 net/bluetooth/iso.c -- 2.21.0