From: Luiz Augusto von Dentz <luiz.von.dentz@xxxxxxxxx> This introduces the initial support for Bluetooth 5.2 features: * ISO channels: + tools/isotest command line tool to run validation tests * L2CAP Enhanced Credit Based Flow Control Mode + tools/l2test has been update to include the new mode * Enhanced ATT Bearer: + Client and Server support + Include all new procedures + Automaticlly detects and enables channels + Number of channels configurable via main.conf * Monitor: + HCI/LL Bluetooth 5.2 command/event decoding + ISO packets decoding + L2CAP Enhanced Credit Based Flow Control Mode decoding + Enhanced ATT packets decoding * Emulator: + CIS/Unicast emulation support - BIS/Broadcast emulation not yet supported Kernel changes: https://lore.kernel.org/linux-bluetooth/20200107074056.25453-1-luiz.dentz@xxxxxxxxx/T/#t Luiz Augusto von Dentz (22): monitor: Add support for decoding ISO related commands monitor: Add decoding of ISO related Link Layer PDUs lib: Add definitions for ISO socket tools: Add isotest tool emulator: Add initial support for BT 5.2 monitor: Add support for ISO packets tools/btproxy: Add support for ISO packets monitor: Fix decoding of CIS estabilished event emulator/btdev: Add parameter to CIS Estabilished lib: Add definitions for Enhanced Credits Based Mode btio: Add mode to for Enhanced Credit Mode monitor: Add decoding for L2CAP Enhanced Credit Based PDUs l2test: Add support for L2CAP_ECRED_MODE share/att: Add EATT support shared/gatt-client: Add support for EATT features gatt: Enable EATT bearer support shared/gatt-server: Add support for Read Multiple Variable Length shared/gatt-client: Add support for Read Multiple Variable Length shared/gatt: Add support for Handle Value Multiple Notifications gatt: Add support for Notify Multiple core: Add support for setting the number of GATT bearers monitor: Add support for decoding EATT Makefile.tools | 5 +- attrib/gattrib.c | 5 +- btio/btio.c | 2 +- btio/btio.h | 3 +- emulator/btdev.c | 293 +++++++++-- emulator/btdev.h | 1 + emulator/hciemu.c | 3 + emulator/hciemu.h | 1 + emulator/vhci.c | 3 +- lib/bluetooth.h | 14 + lib/iso.h | 45 ++ lib/l2cap.h | 1 + lib/uuid.h | 3 + monitor/bt.h | 385 ++++++++++++++ monitor/l2cap.c | 192 +++++++ monitor/ll.c | 100 ++++ monitor/packet.c | 714 ++++++++++++++++++++++++++ monitor/packet.h | 2 + peripheral/gatt.c | 2 +- src/device.c | 18 +- src/gatt-client.c | 85 ++++ src/gatt-database.c | 125 +++-- src/hcid.h | 1 + src/main.c | 14 + src/main.conf | 5 + src/shared/att-types.h | 25 +- src/shared/att.c | 780 +++++++++++++++++++---------- src/shared/att.h | 18 +- src/shared/btsnoop.h | 2 + src/shared/gatt-client.c | 279 +++++++++-- src/shared/gatt-client.h | 5 +- src/shared/gatt-server.c | 388 ++++++++++----- src/shared/gatt-server.h | 2 +- tools/btgatt-client.c | 2 +- tools/btgatt-server.c | 4 +- tools/btproxy.c | 20 +- tools/isotest.c | 1019 ++++++++++++++++++++++++++++++++++++++ tools/l2test.c | 5 +- unit/test-gatt.c | 4 +- 39 files changed, 4046 insertions(+), 529 deletions(-) create mode 100644 lib/iso.h create mode 100644 tools/isotest.c -- 2.21.0