Skip to content
Commit aa129fee authored by Johan Hedberg's avatar Johan Hedberg
Browse files

Merge bluetooth branch into master



 - Redesigned controller-host interface with less buffers & threads
 - Lower latency work & interrupt handling in the controller
 - Improved SDP client support
 - Improved RFCOMM support
 - Improved AT parser (for HFP)
 - IPSP sample app ported to native IP stack

----------------------------------------------------------------
Arkadiusz Lichwa (11):
      Bluetooth: SDP: Implement ServiceSearchAttribute request PDU
      Bluetooth: SDP: Validate Transaction ID of PDU
      Bluetooth: SDP: Introduce ContinuationState of PDU
      Bluetooth: SDP: Handle SSA PDU response
      Bluetooth: SDP: Enable resolve all user delivered UUIDs
      Bluetooth: SDP: Validate SSA response PDU
      Bluetooth: SDP: Allocate user delivered memory for resolved data
      Bluetooth: SDP: Check room needed against user allocated
      Bluetooth: SDP: Send resolved UUID data to user
      Bluetooth: SDP: Add UUID reference to user callback
      Bluetooth: SDP: Update 'no records found' code comment

Arun Jagadish (1):
      Bluetooth: AVDTP:Add Accept Incoming connection cb

Carles Cufi (5):
      Bluetooth: Rename SEND_STACK to TX_STACK_SIZE
      Bluetooth: hci_uart: Disable HCI ECC commands temporarily
      bluetooth: Tune stack sizes after measuring with hci_uart
      bluetooth: controller: Split events into normal and priority
      bluetooth: hci_uart: Allocate 65 bytes for L2CAP packets

Jaganath Kanakkassery (7):
      Bluetooth: RFCOMM: Respond to Test command
      Bluetooth: RFCOMM: Handle non supported message types
      Bluetooth: Fix reserve param of bt_l2cap_create_pdu()
      Bluetooth: RFCOMM: Increase dlc stack size to 256
      Bluetooth: RFCOMM: Rearrange fns to avoid forward declaration
      Bluetooth: RFCOMM: Implement timer in dlc
      Bluetooth: RFCOMM: Implement timer in session

Johan Hedberg (24):
      Bluetooth: Take advantage of new net_buf_add_mem() API
      Bluetooth: Fix incorrect call to memcpy()
      Bluetooth: Fix another incorrect memcpy call
      Bluetooth: hci_ecc: Fix incorrect private_key size
      Bluetooth: Kconfig Remove HOST_BUFFERS option
      Bluetooth: Kconfig: Introduce BLUETOOTH_COMBINED_RX_BUF option
      Bluetooth: Refactor bt_recv() logic
      Bluetooth: Introduce support for HCI driver-side RX thread
      Bluetooth: Remove support for host flow control
      Bluetooth: Add bt_buf_get_rx() helper API
      Bluetooth: Kconfig: Fine tune options for RECV_IS_RX_THREAD
      Bluetooth: Convert H:4 HCI driver to RECV_IS_RX_THREAD
      Bluetooth: Use bt_buf_get_rx in hci_ecc.c
      Bluetooth: hci_ecc: Delay event buffer allocation
      Bluetooth: drivers: Use bt_buf_get_rx() in h5.c
      Bluetooth: Controller: Use bt_buf_get_rx for buffer allocation
      Bluetooth: Remove unused prio pool and buffer helpers
      Bluetooth: Controller: Switch to controller-side RX thread
      Bluetooth: Controller: Deprioritize adv report buffer allocation
      Bluetooth: h4: Use k_fifo instead of k_sem
      Bluetooth: Reduce the minimum RX buf count to 2
      Bluetooth: h4: Convert TX path to be interrupt based
      Bluetooth: Create separate bt_recv_prio() API
      Bluetooth: Fix potential race condition in bt_pub_key_gen()

Louis Caron (1):
      Bluetooth: fix write cmd handling

Luiz Augusto von Dentz (2):
      Bluetooth: ipsp: Port sample to native stack
      Bluetooth: ATT: Fix using k_fifo API with net_buf

Piyush Itankar (1):
      Bluetooth: A2DP: Removes confirmation callback registration

Sathish Narasimman (8):
      Bluetooth: AT: Rename API's which uses term 'stream'
      Bluetooth: HFP HF: SLC Connection send/parse CIND
      Bluetooth: AT: Change API name skip_whitespace to skip_space
      Bluetooth: HFP HF: SLC query indicators present value
      Bluetooth: samples: handsfree application indicator callback
      Bluetooth: HFP HF: SLC Enable indicator status report
      Bluetooth: AT: Reset AT and CMD state
      Bluetooth: HFP HF: Rename cind_status_handle_values

Szymon Janc (1):
      Bluetooth: hci_ecc: Verify LE Generate DHKey command parameters

Vinayak Chettimada (18):
      Bluetooth: Controller: internally handle unknown rsp for LE Ping
      Bluetooth: Controller: use BT_WARN to display unknown rsp
      Bluetooth: Controller: add radio ISR profiling event
      Bluetooth: Controller: BT_INFO the ISR profiling event
      Bluetooth: Controller: Kconfig radio ISR profiling
      Bluetooth: Controller: refactor ISR to reduce critical path code
      Bluetooth: Controller: add init test for BT 4.0 only controller
      Bluetooth: Controller: Kconfig LE Ping feature
      Bluetooth: Controller: fix LE Ping conditional compilations
      Bluetooth: Controller: Kconfig Data Length Update feature
      Bluetooth: Controller: Kconfig connection RSSI measurement
      Bluetooth: Controller: Kconfig Tx buffer size
      Bluetooth: Controller: Kconfig fast encryption setup feature
      Bluetooth: Controller: add memq_peek interface
      Bluetooth: Controller: replace work with mayfly
      Bluetooth: Controller: fix DLE conditional compilations
      Bluetooth: Controller: Remove advertiser struct use in observer
      Bluetooth: Controller: revert to event callback inside radio ISR

 drivers/bluetooth/hci/Kconfig                      |  14 +-
 drivers/bluetooth/hci/h4.c                         | 398 ++++++---
 drivers/bluetooth/hci/h5.c                         |   9 +-
 drivers/bluetooth/nble/gatt.c                      |   2 +-
 drivers/bluetooth/nble/rpc_serialize.c             |   6 +-
 include/bluetooth/buf.h                            |  38 +-
 include/bluetooth/hci.h                            |   1 +
 include/bluetooth/hfp_hf.h                         |  73 +-
 include/bluetooth/rfcomm.h                         |   5 +-
 include/bluetooth/sdp.h                            |   6 +-
 include/drivers/bluetooth/hci_driver.h             |  34 +-
 samples/bluetooth/handsfree/src/main.c             |  42 +
 samples/bluetooth/hci_uart/nrf5.conf               |   4 +-
 samples/bluetooth/hci_uart/src/main.c              |   8 +-
 samples/bluetooth/hci_usb/src/main.c               |   6 +-
 samples/bluetooth/ipsp/prj.conf                    |  34 +-
 samples/bluetooth/ipsp/src/main.c                  | 384 +++++++--
 subsys/bluetooth/Kconfig                           |   2 +-
 subsys/bluetooth/controller/Kconfig                |  81 +-
 subsys/bluetooth/controller/Makefile               |  13 +-
 subsys/bluetooth/controller/hal/ccm.h              |   2 -
 .../bluetooth/controller/hal/{hal_rtc.h => cntr.h} |  16 +-
 subsys/bluetooth/controller/hal/cpu.h              |   2 -
 subsys/bluetooth/controller/hal/debug.h            |   2 -
 subsys/bluetooth/controller/hal/ecb.h              |   2 +-
 subsys/bluetooth/controller/hal/hal_work.h         |  33 -
 .../controller/hal/{rtc.c => nrf5/cntr.c}          |  35 +-
 subsys/bluetooth/controller/hal/{ => nrf5}/ecb.c   |   6 +-
 subsys/bluetooth/controller/hal/{ => nrf5}/radio.c |  19 +-
 subsys/bluetooth/controller/hal/{ => nrf5}/rand.c  |  46 +-
 subsys/bluetooth/controller/hal/radio.h            |   2 +-
 subsys/bluetooth/controller/hal/rand.h             |   2 +-
 subsys/bluetooth/controller/hci/hci.c              |  64 +-
 subsys/bluetooth/controller/hci/hci_driver.c       | 257 ++++--
 subsys/bluetooth/controller/hci/hci_internal.h     |   1 +
 subsys/bluetooth/controller/ll/ctrl.c              | 869 ++++++++++++++------
 subsys/bluetooth/controller/ll/ctrl.h              |  72 +-
 subsys/bluetooth/controller/ll/ctrl_internal.h     |  32 +-
 subsys/bluetooth/controller/ll/ll.c                |  12 +-
 subsys/bluetooth/controller/ll/pdu.h               |  19 +-
 .../bluetooth/controller/{ll => ticker}/ticker.c   | 459 ++++++++---
 .../bluetooth/controller/{ll => ticker}/ticker.h   |   2 +-
 subsys/bluetooth/controller/util/config.h          |  40 +
 subsys/bluetooth/controller/util/defines.h         |  34 -
 subsys/bluetooth/controller/util/mayfly.c          | 163 ++++
 .../bluetooth/controller/util/{work.h => mayfly.h} |  35 +-
 subsys/bluetooth/controller/util/mem.c             |  45 +-
 subsys/bluetooth/controller/util/mem.h             |   8 +
 subsys/bluetooth/controller/util/memq.c            |  18 +-
 subsys/bluetooth/controller/util/memq.h            |   1 +
 subsys/bluetooth/controller/util/util.h            |   8 +
 subsys/bluetooth/controller/util/work.c            | 165 ----
 subsys/bluetooth/host/Kconfig                      |  94 +--
 subsys/bluetooth/host/a2dp.c                       |   6 -
 subsys/bluetooth/host/at.c                         |  38 +-
 subsys/bluetooth/host/at.h                         |  10 +-
 subsys/bluetooth/host/att.c                        |  27 +-
 subsys/bluetooth/host/avdtp.c                      |  37 +-
 subsys/bluetooth/host/avdtp_internal.h             |  40 +-
 subsys/bluetooth/host/conn.c                       |   4 +-
 subsys/bluetooth/host/conn_internal.h              |   2 +-
 subsys/bluetooth/host/gatt.c                       |   3 +-
 subsys/bluetooth/host/hci_core.c                   | 271 ++----
 subsys/bluetooth/host/hci_core.h                   |   4 +
 subsys/bluetooth/host/hci_ecc.c                    |  95 ++-
 subsys/bluetooth/host/hci_raw.c                    |  23 +-
 subsys/bluetooth/host/hfp_hf.c                     | 268 +++++-
 subsys/bluetooth/host/hfp_internal.h               |  16 +-
 subsys/bluetooth/host/l2cap.c                      |  10 +-
 subsys/bluetooth/host/l2cap_br.c                   |   4 +-
 subsys/bluetooth/host/rfcomm.c                     | 195 ++++-
 subsys/bluetooth/host/rfcomm_internal.h            |   5 +
 subsys/bluetooth/host/sdp.c                        | 383 ++++++++-
 subsys/bluetooth/host/sdp_internal.h               |  12 +
 subsys/bluetooth/host/smp.c                        |   2 +-
 subsys/bluetooth/host/smp_null.c                   |   2 +-
 tests/bluetooth/init/prj_controller_4_0.conf       |  14 +
 tests/bluetooth/init/prj_controller_dbg.conf       |   2 +
 tests/bluetooth/init/testcase.ini                  |  11 +-
 tests/bluetooth/shell/src/main.c                   |   4 +-
 tests/bluetooth/tester/src/l2cap.c                 |   2 +-
 81 files changed, 3622 insertions(+), 1593 deletions(-)
 rename subsys/bluetooth/controller/hal/{hal_rtc.h => cntr.h} (75%)
 delete mode 100644 subsys/bluetooth/controller/hal/hal_work.h
 rename subsys/bluetooth/controller/hal/{rtc.c => nrf5/cntr.c} (63%)
 rename subsys/bluetooth/controller/hal/{ => nrf5}/ecb.c (98%)
 rename subsys/bluetooth/controller/hal/{ => nrf5}/radio.c (97%)
 rename subsys/bluetooth/controller/hal/{ => nrf5}/rand.c (72%)
 rename subsys/bluetooth/controller/{ll => ticker}/ticker.c (81%)
 rename subsys/bluetooth/controller/{ll => ticker}/ticker.h (98%)
 create mode 100644 subsys/bluetooth/controller/util/config.h
 delete mode 100644 subsys/bluetooth/controller/util/defines.h
 create mode 100644 subsys/bluetooth/controller/util/mayfly.c
 rename subsys/bluetooth/controller/util/{work.h => mayfly.h} (52%)
 delete mode 100644 subsys/bluetooth/controller/util/work.c
 create mode 100644 tests/bluetooth/init/prj_controller_4_0.conf

Change-Id: I1ea0adab8e50f643fb2ffdf487da1a9c30183225
Signed-off-by: default avatarJohan Hedberg <johan.hedberg@intel.com>
parents 457ae38d 696b89da
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment