zephyr/tests
Johan Hedberg 5ada33a862 Merge bluetooth branch to master
Main changes:

 - Introduce support for a native Bluetooth controller implementation. Current
   supported controller is the nRF52, with nRF51 soon to follow.
 - Initial support for the RFCOMM protocol
 - New raw HCI interface to enable exporting HCI externally
 - New sample application to expose HCI over USB (using the new raw API)
 - Close-to-complete BR/EDR L2CAP implementation
 - Cross-transport key derivation support from LE to BR/EDR

-----------------------------------------------------------------------------
Andrei Emeltchenko (8):
      Bluetooth: Simplify configuration and fix warnings
      Bluetooth: Add RAW API interface to Bluetooth
      Bluetooth: Add documentation to HCI RAW interface
      Bluetooth: Export USB HCI controller using RAW HCI channel
      Bluetooth: Include btusb sample to sanity check
      Bluetooth/drivers: Fix missing argument in printf for h5 driver
      Bluetooth/samples: Fix missing argument in printf for btusb
      drivers/nble: Rename nrf51 power management functions

Arkadiusz Lichwa (8):
      Bluetooth: L2CAP: Make common RTX commands timer
      Bluetooth: L2CAP: Initialize & cleanup RTX timer on BR/EDR
      Bluetooth: L2CAP: Add RTX timer for 'get info' command
      Bluetooth: L2CAP: Add RTX timer for 'configuration' command
      Bluetooth: L2CAP: Add RTX timer for 'disconnect' command
      Bluetooth: L2CAP: Refactor connection security handler
      Bluetooth: L2CAP: Fix reset channel state context
      Bluetooth: L2CAP: Implement connect command on BR/EDR

Carles Cufi (7):
      Bluetooth: Cleanup and extend HCI header
      Bluetooth: Controller: Use offsetof() in memory sizing
      Bluetooth: Controller: Unify handling of unknown command
      Bluetooth: Controller: Unify handling of CC and CS
      Bluetooth: HCI: Rename cmd complete struct
      Bluetooth: HCI: Add definitions and macros
      Bluetooth: Controller: Switch to Zephyr's hci.h for cmd handling

Grzegorz Kolodziejczyk (1):
      Bluetooth: tester: Add L2CAP init method

Jaganath Kanakkassery (23):
      Bluetooth: L2CAP: Implement bt_l2cap_br_chan_send()
      Bluetooth: RFCOMM: Initialize and register to L2CAP
      Bluetooth: RFCOMM: Implement Register Server channel API
      Bluetooth: RFCOMM: Init buffer for outgoing signalling packets
      Bluetooth: RFCOMM: Handle signalling connection request
      Bluetooth: RFCOMM: Handle PN request
      Bluetooth: RFCOMM: Handle incoming dlc request
      Bluetooth: shell: Add support for RFCOMM test
      Bluetooth: RFCOMM: Move rfcomm_make_uih_msg() up
      Bluetooth: RFCOMM: Perform MSC transaction after dlc
      Bluetooth: RFCOMM: Handle data and credit from peer
      Bluetooth: RFCOMM: Fix cr bit of address in MSC response
      Bluetooth: L2CAP: Disable fragmentation of rx pdu
      Bluetooth: RFCOMM: Implement send data API
      Bluetooth: shell: Add support for RFCOMM send data
      Bluetooth: Kconfig: Add default for L2CAP_IN_MTU if BREDR is enabled
      Bluetooth: RFCOMM: Introduce helper to create rfcomm pdu
      Bluetooth: RFCOMM: Introduce Kconfig for max L2CAP MTU
      Bluetooth: shell: Use bt_rfcomm_create_pdu() in RFCOMM send
      Bluetooth: RFCOMM: Fix BT_RFCOMM_BUF_SIZE to include FCS and len
      Bluetooth: RFCOMM: Remove BT_RFCOMM_SEND_RESERVE
      Bluetooth: RFCOMM: Implement TX flow control
      Bluetooth: RFCOMM: Modify bt_rfcomm_dlc() to return dlc

Johan Hedberg (13):
      Bluetooth: monitor: Fix condition for disabling UART interrupts
      Bluetooth: Fix race condition when initializing ECC FIFO
      Bluetooth: Add missing guards to hci_raw.h header file
      Bluetooth: Controller: Fix coding style in ctrl.c, util/ and main.c
      Bluetooth: Kconfig: Remove unnecessary default conditionals
      Bluetooth: Make lmp_ext_feat_capable() more generic
      Bluetooth: Fix reading local features
      Bluetooth: Fix feature page count for single-mode configuration
      Bluetooth: Clean up feature test macros
      Bluetooth: ATT: Fix usage of unsupported %zu format specifier
      Bluetooth: Kconfig: Be consistent with the use of tabs vs spaces
      MAINTAINERS: Fix path for BLUETOOTH CONTROLLER
      Bluetooth: GATT: Fix unaligned access to CCC value

Jonathan Gelie (1):
      Bluetooth: Enable and disable BLE chip sleep mode dynamically

Kaustav Dey Biswas (1):
      Bluetooth: UUID: Add 32bit UUID support

Luiz Augusto von Dentz (7):
      Bluetooth: eddystone: Add timeout to deactivate configuration mode
      Bluetooth: GATT: Add queuing support
      Bluetooth: UUID: Add HID Service
      Bluetooth: Add service sample for HoG
      Bluetooth: Add sample implementing HIDS
      Bluetooth: HoG: Require authentication for connections
      Bluetooth: GATT: Fix unaligned accesses

Mariusz Skamra (1):
      Bluetooth: btp: Extend BTP specification to cover L2CAP tests

Ricardo Salveti (1):
      board: nrf52_nitrogen: Include BLE controller by default

Szymon Janc (22):
      Bluetooth: Split keys into LE and BR/EDR specific storage
      Bluetooth: SMP: Remove not needed stubs from NULL backend
      Bluetooth: Mark AES encrypted BR/EDR link as FIPS security level
      Bluetooth: SMP: Add helper for notifying pairing complete
      Bluetooth: SMP: Refactor keys distribution bitfields
      Bluetooth: SMP: Add support for Link Key derivation
      Bluetooth: SMP: Add self test for H6 function
      Bluetooth: Fail on init if BR/EDR is enabled but not supported
      Bluetooth: L2CAP: Remove mask from struct bt_l2cap_fixed_chan
      Bluetooth: L2CAP: Use BIT macro for supported BR/EDR fixed channels
      Bluetooth: L2CAP: Make bt_l2cap_br_fixed_chan_register global
      Bluetooth: Set BR/EDR device name on init
      Bluetooth: tests/shell: Set same name on BR/EDR and LE
      Bluetooth: tests/shell: Add dedicated BR/EDR config
      Bluetooth: tests/shell: Remove not needed RFCOMM option from config
      Bluetooth: Fix typo in code comment
      Bluetooth: Build RFCOMM documentation
      Bluetooth: Refactor Link Key notification event handling
      Bluetooth: Add support for P256 Link Keys
      Bluetooth: Read local extended features on init
      Bluetooth: Enable Secure Connections if supported
      Bluetooth: Move reading extended features to BR/EDR section of init

Vinayak Chettimada (22):
      soc: Use nrf.h instead of nrf52.h and nrf52_bitfields.h
      Bluetooth: Fix race condition between ecc_send and ecc_task
      MAINTAINERS: Add BLUETOOTH CONTROLLER section
      Bluetooth: Controller: Hardware abstraction layer for nRF5x radio
      Bluetooth: Controller: Add a util folder with basic primitives
      Bluetooth: Controller: Add initial HCI implementation
      Bluetooth: Controller: A full, hardware-agnostic BLE Link Layer
      Bluetooth: Controller: Add BLE controller driver
      board: nrf52_pca10040: Include BLE controller by default
      Bluetooth: tests: Add BLE controller init tests
      Bluetooth: Controller: Fix coding style, use of (void)
      Bluetooth: Controller: Fix assert on advertise start
      Bluetooth: Controller: Fix memory required calculation macro
      Bluetooth: Controller: Fix deadlock in recv fiber
      Bluetooth: GATT: Fix notifications to non-bonded peers
      misc/byteorder.h: Add sys_get_le64 interface
      Bluetooth: Add LE read supported states
      Bluetooth: Controller: Measure and use correct stack size
      Bluetooth: Controller: Enable all supported LE states
      Bluetooth: GAP: Support multiple peripheral role connections
      Bluetooth: GATT: Fix ccc cfg leak
      Bluetooth: Controller: alternate ticker compare set logic

 MAINTAINERS                                     |    6 +
 arch/arm/soc/nordic_nrf5/nrf52/soc.h            |    3 +-
 boards/nrf52_nitrogen/nrf52_nitrogen_defconfig  |    4 +
 boards/nrf52_pca10040/nrf52_pca10040_defconfig  |    4 +
 doc/api/bluetooth.rst                           |   19 +
 drivers/bluetooth/Kconfig                       |   13 +-
 drivers/bluetooth/Makefile                      |    1 +
 drivers/bluetooth/controller/Kconfig            |   39 +
 drivers/bluetooth/controller/Makefile           |   18 +
 drivers/bluetooth/controller/hal/ccm.h          |   31 +
 drivers/bluetooth/controller/hal/clock.c        |  230 +++++
 drivers/bluetooth/controller/hal/clock.h        |   26 +
 drivers/bluetooth/controller/hal/cpu.h          |   30 +
 drivers/bluetooth/controller/hal/debug.h        |  233 +++++
 drivers/bluetooth/controller/hal/ecb.c          |  188 ++++
 drivers/bluetooth/controller/hal/ecb.h          |   45 +
 drivers/bluetooth/controller/hal/hal_irq.h      |   27 +
 drivers/bluetooth/controller/hal/hal_rtc.h      |   27 +
 drivers/bluetooth/controller/hal/hal_work.h     |   33 +
 drivers/bluetooth/controller/hal/irq.c          |   53 +
 drivers/bluetooth/controller/hal/radio.c        |  552 ++++++++++
 drivers/bluetooth/controller/hal/radio.h        |  108 ++
 drivers/bluetooth/controller/hal/rand.c         |  125 +++
 drivers/bluetooth/controller/hal/rand.h         |   25 +
 drivers/bluetooth/controller/hal/rtc.c          |   68 ++
 drivers/bluetooth/controller/hci/hci.c          | 1979 ++++++++++++++++++++++++++++++++++++
 drivers/bluetooth/controller/hci/hci.h          |   26 +
 drivers/bluetooth/controller/ll/ctrl.c          | 7407 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 drivers/bluetooth/controller/ll/ctrl.h          |  255 +++++
 drivers/bluetooth/controller/ll/ctrl_internal.h |  239 +++++
 drivers/bluetooth/controller/ll/ll.c            |  295 ++++++
 drivers/bluetooth/controller/ll/ll.h            |   39 +
 drivers/bluetooth/controller/ll/pdu.h           |  260 +++++
 drivers/bluetooth/controller/ll/ticker.c        | 1538 ++++++++++++++++++++++++++++
 drivers/bluetooth/controller/ll/ticker.h        |  138 +++
 drivers/bluetooth/controller/main.c             |  400 ++++++++
 drivers/bluetooth/controller/util/defines.h     |   34 +
 drivers/bluetooth/controller/util/mem.c         |  196 ++++
 drivers/bluetooth/controller/util/mem.h         |   35 +
 drivers/bluetooth/controller/util/memq.c        |   96 ++
 drivers/bluetooth/controller/util/memq.h        |   25 +
 drivers/bluetooth/controller/util/util.c        |  134 +++
 drivers/bluetooth/controller/util/util.h        |   26 +
 drivers/bluetooth/controller/util/work.c        |  168 ++++
 drivers/bluetooth/controller/util/work.h        |   38 +
 drivers/bluetooth/h5.c                          |    2 +-
 drivers/bluetooth/nble/gatt.c                   |    5 +-
 drivers/bluetooth/nble/gatt_internal.h          |    6 +-
 drivers/bluetooth/nble/uart.c                   |   10 +-
 drivers/bluetooth/nrf51_pm.c                    |    6 +-
 drivers/bluetooth/nrf51_pm.h                    |    4 +-
 include/bluetooth/att.h                         |   18 +
 include/bluetooth/gatt.h                        |   27 +-
 include/bluetooth/hci.h                         |  653 ++++++++----
 include/bluetooth/hci_raw.h                     |   64 ++
 include/bluetooth/l2cap.h                       |    6 +-
 include/bluetooth/rfcomm.h                      |  162 +++
 include/bluetooth/uuid.h                        |   50 +
 include/misc/byteorder.h                        |   15 +
 net/bluetooth/Kconfig                           |  121 ++-
 net/bluetooth/Makefile                          |   21 +-
 net/bluetooth/att.c                             |  298 +++---
 net/bluetooth/att_internal.h                    |   13 +-
 net/bluetooth/conn.c                            |   50 +-
 net/bluetooth/conn_internal.h                   |   16 +-
 net/bluetooth/gatt.c                            |   60 +-
 net/bluetooth/hci_core.c                        |  405 +++++---
 net/bluetooth/hci_core.h                        |   18 +-
 net/bluetooth/hci_ecc.c                         |   19 +-
 net/bluetooth/hci_raw.c                         |  142 +++
 net/bluetooth/keys.c                            |   96 +-
 net/bluetooth/keys.h                            |   55 +-
 net/bluetooth/keys_br.c                         |   85 ++
 net/bluetooth/l2cap.c                           |   29 +-
 net/bluetooth/l2cap_br.c                        |  431 +++++++-
 net/bluetooth/l2cap_internal.h                  |   18 +-
 net/bluetooth/monitor.c                         |    2 +
 net/bluetooth/rfcomm.c                          |  728 ++++++++++++++
 net/bluetooth/rfcomm_internal.h                 |  125 +++
 net/bluetooth/smp.c                             |  241 ++++-
 net/bluetooth/smp_null.c                        |    9 -
 net/bluetooth/uuid.c                            |   10 +
 samples/bluetooth/README                        |    5 +
 samples/bluetooth/btusb/Makefile                |    5 +
 samples/bluetooth/btusb/prj.conf                |   10 +
 samples/bluetooth/btusb/src/Makefile            |    3 +
 samples/bluetooth/btusb/src/btusb.c             |  725 ++++++++++++++
 samples/bluetooth/btusb/testcase.ini            |    5 +
 samples/bluetooth/eddystone/src/main.c          |   40 +-
 samples/bluetooth/gatt/hog.c                    |  178 ++++
 samples/bluetooth/gatt/hog.h                    |   21 +
 samples/bluetooth/peripheral_hids/Makefile      |    7 +
 samples/bluetooth/peripheral_hids/prj.conf      |    7 +
 samples/bluetooth/peripheral_hids/prj.mdef      |    5 +
 samples/bluetooth/peripheral_hids/prj_nble.conf |    5 +
 samples/bluetooth/peripheral_hids/src/Makefile  |    4 +
 samples/bluetooth/peripheral_hids/src/main.c    |  155 +++
 samples/bluetooth/peripheral_hids/testcase.ini  |   19 +
 tests/bluetooth/init/prj_controller.conf        |   13 +
 tests/bluetooth/init/prj_controller_dbg.conf    |   25 +
 tests/bluetooth/init/testcase.ini               |   16 +
 tests/bluetooth/shell/prj.conf                  |    3 +-
 tests/bluetooth/shell/prj_br.conf               |   18 +
 tests/bluetooth/shell/src/main.c                |  115 ++-
 tests/bluetooth/shell/testcase.ini              |    9 +
 tests/bluetooth/tester/btp_spec.txt             |  149 +++
 tests/bluetooth/tester/prj.conf                 |    1 +
 tests/bluetooth/tester/prj_nimble.conf          |    1 +
 tests/bluetooth/tester/src/Makefile             |    4 +-
 tests/bluetooth/tester/src/bttester.c           |    9 +
 tests/bluetooth/tester/src/bttester.h           |    3 +
 tests/bluetooth/tester/src/gatt.c               |    9 +-
 tests/bluetooth/tester/src/l2cap.c              |   14 +
 113 files changed, 19979 insertions(+), 860 deletions(-)
 create mode 100644 drivers/bluetooth/controller/Kconfig
 create mode 100644 drivers/bluetooth/controller/Makefile
 create mode 100644 drivers/bluetooth/controller/hal/ccm.h
 create mode 100644 drivers/bluetooth/controller/hal/clock.c
 create mode 100644 drivers/bluetooth/controller/hal/clock.h
 create mode 100644 drivers/bluetooth/controller/hal/cpu.h
 create mode 100644 drivers/bluetooth/controller/hal/debug.h
 create mode 100644 drivers/bluetooth/controller/hal/ecb.c
 create mode 100644 drivers/bluetooth/controller/hal/ecb.h
 create mode 100644 drivers/bluetooth/controller/hal/hal_irq.h
 create mode 100644 drivers/bluetooth/controller/hal/hal_rtc.h
 create mode 100644 drivers/bluetooth/controller/hal/hal_work.h
 create mode 100644 drivers/bluetooth/controller/hal/irq.c
 create mode 100644 drivers/bluetooth/controller/hal/radio.c
 create mode 100644 drivers/bluetooth/controller/hal/radio.h
 create mode 100644 drivers/bluetooth/controller/hal/rand.c
 create mode 100644 drivers/bluetooth/controller/hal/rand.h
 create mode 100644 drivers/bluetooth/controller/hal/rtc.c
 create mode 100644 drivers/bluetooth/controller/hci/hci.c
 create mode 100644 drivers/bluetooth/controller/hci/hci.h
 create mode 100644 drivers/bluetooth/controller/ll/ctrl.c
 create mode 100644 drivers/bluetooth/controller/ll/ctrl.h
 create mode 100644 drivers/bluetooth/controller/ll/ctrl_internal.h
 create mode 100644 drivers/bluetooth/controller/ll/ll.c
 create mode 100644 drivers/bluetooth/controller/ll/ll.h
 create mode 100644 drivers/bluetooth/controller/ll/pdu.h
 create mode 100644 drivers/bluetooth/controller/ll/ticker.c
 create mode 100644 drivers/bluetooth/controller/ll/ticker.h
 create mode 100644 drivers/bluetooth/controller/main.c
 create mode 100644 drivers/bluetooth/controller/util/defines.h
 create mode 100644 drivers/bluetooth/controller/util/mem.c
 create mode 100644 drivers/bluetooth/controller/util/mem.h
 create mode 100644 drivers/bluetooth/controller/util/memq.c
 create mode 100644 drivers/bluetooth/controller/util/memq.h
 create mode 100644 drivers/bluetooth/controller/util/util.c
 create mode 100644 drivers/bluetooth/controller/util/util.h
 create mode 100644 drivers/bluetooth/controller/util/work.c
 create mode 100644 drivers/bluetooth/controller/util/work.h
 create mode 100644 include/bluetooth/hci_raw.h
 create mode 100644 include/bluetooth/rfcomm.h
 create mode 100644 net/bluetooth/hci_raw.c
 create mode 100644 net/bluetooth/keys_br.c
 create mode 100644 net/bluetooth/rfcomm.c
 create mode 100644 net/bluetooth/rfcomm_internal.h
 create mode 100644 samples/bluetooth/btusb/Makefile
 create mode 100644 samples/bluetooth/btusb/prj.conf
 create mode 100644 samples/bluetooth/btusb/src/Makefile
 create mode 100644 samples/bluetooth/btusb/src/btusb.c
 create mode 100644 samples/bluetooth/btusb/testcase.ini
 create mode 100644 samples/bluetooth/gatt/hog.c
 create mode 100644 samples/bluetooth/gatt/hog.h
 create mode 100644 samples/bluetooth/peripheral_hids/Makefile
 create mode 100644 samples/bluetooth/peripheral_hids/prj.conf
 create mode 100644 samples/bluetooth/peripheral_hids/prj.mdef
 create mode 100644 samples/bluetooth/peripheral_hids/prj_nble.conf
 create mode 100644 samples/bluetooth/peripheral_hids/src/Makefile
 create mode 100644 samples/bluetooth/peripheral_hids/src/main.c
 create mode 100644 samples/bluetooth/peripheral_hids/testcase.ini
 create mode 100644 tests/bluetooth/init/prj_controller.conf
 create mode 100644 tests/bluetooth/init/prj_controller_dbg.conf
 create mode 100644 tests/bluetooth/shell/prj_br.conf

Change-Id: I98253a11e4ca6953def3d7a764ca6aa60a7f29ff
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2016-09-07 16:21:38 +03:00
..
benchmark tests: fixed resulting binary name in README 2016-09-07 12:56:03 +00:00
bluetooth Bluetooth: tester: Add L2CAP init method 2016-09-07 09:08:47 +00:00
compliance
crypto checkpatch: fix ERROR:POINTER_LOCATION 2016-08-29 08:47:05 -04:00
drivers/pinmux
include tests: Allow tc_util to use printf when requested 2016-06-29 05:19:26 +00:00
kernel test_context: don't test dynamic exceptions 2016-09-06 16:15:59 +00:00
net/buf tests: net: fix incorrect printk() usage 2016-08-28 07:47:28 -04:00
defaults.tc testcases: introduce defaults to build/deploy/evaluate 2016-07-23 18:31:18 +00:00