zephyr/include
Rubin Gerritsen 98321c61fb bluetooth: host: Allow concurrent advertising with multiple ids
The HCI specification creates additional complexity to allow this
configuration:
 - When a connection gets established, we need to know which
   identity the HCI_LE_Connection_Complete event corresponds to.
 - The identity is a property of the advertising set.
   Therefore we need the advertising handle.
 - The advertising handle is part of the
   HCI_LE_Advertising_Set_Terminated event and is not part of
   the HCI_LE_Connection_Complete event. Therefore
   the information of both events needs to be combined.

By spec the LE_Connection_Complete comes first. Therefore we cache
this event until the identity is available.
The event is only cached when a connection gets established as
that is the only case where we need to resolve the identity.

As the caching requires more resources, it is only enabled if the
application requires multiple advertising sets and multiple
identities.

The host maps the HCI_LE_Advertising_Set_Terminated event with
the HCI_LE_Connection_Complete event by comparing the connection
handles.

Signed-off-by: Rubin Gerritsen <rubin.gerritsen@nordicsemi.no>
2021-05-07 12:15:20 +03:00
..
app_memory arm/arm64: Make ARM64 a standalone architecture 2021-03-31 10:34:33 -05:00
arch arch: arm: aarch32: Use mpu headers from common aarch32 location 2021-05-06 19:39:09 +02:00
audio audio: dmic: fix compile error on arm gcc 8 2021-02-16 15:29:16 +03:00
bluetooth bluetooth: host: Allow concurrent advertising with multiple ids 2021-05-07 12:15:20 +03:00
canbus canbus: isotp: add fixed addressing feature 2021-04-06 16:44:34 -04:00
console device: Const-ify all device driver instance pointers 2020-09-02 13:48:13 +02:00
crypto device: Const-ify all device driver instance pointers 2020-09-02 13:48:13 +02:00
data doc: fix @param usage in callbacks 2020-12-18 12:18:28 +01:00
debug debug: coredump: remove z_ prefix for stuff used outside subsys 2021-01-21 22:08:59 -05:00
devicetree devicetree: spi: clean up DT_SPI_DEV_CS_GPIOS_CTLR 2021-03-30 07:06:48 -05:00
dfu modules: introduce MCUBOOT_BOOTUTIL module 2021-01-14 18:03:38 +01:00
disk include: disk_access: Add a compat warning 2021-03-26 08:59:47 -04:00
display device: Const-ify all device driver instance pointers 2020-09-02 13:48:13 +02:00
drivers pm: rename device_pm_cb to pm_device_cb 2021-05-05 18:35:49 -04:00
dt-bindings ite: drivers/pinmux: modify pinmux driver 2021-05-05 08:45:16 -04:00
fs include/fs: fixed typo in fs_file_t_init() description 2021-02-05 07:32:20 -05:00
ipc ipc: RPMsg service to register multiple endpoints 2021-01-19 22:07:09 +01:00
kernel kernel: mmu: collect more demand paging statistics 2021-04-06 16:43:55 -04:00
linker kernel: generate placeholders for kobj tables before final build 2021-04-27 13:32:00 -04:00
logging logging: Add optional context argument to LOG_BACKEND_DEFINE 2021-05-06 15:40:05 +02:00
lorawan lorawan: port oriented downlink callbacks 2021-04-30 13:05:10 -05:00
mgmt include: Move ec_host_cmd.h to mgmt/ec_host_cmd.h 2021-04-22 12:51:16 -04:00
modbus modbus: add raw ADU support 2021-03-19 15:50:21 +01:00
net net: openthread: add Link Metrics API 2021-05-06 09:57:15 -05:00
pm pm: rename PM_DEVICE_GET/SET_POWER_STATE to PM_DEVICE_STATE_GET/SET 2021-05-05 18:35:49 -04:00
portability portability: move cmsis api headers 2021-04-20 08:45:05 -04:00
posix sys: eventfd: Add locking to eventfd_read/write functions 2021-04-15 07:16:51 -05:00
power pm: deprecate power/power.h header 2021-05-05 18:35:49 -04:00
random random: Add syscalls for random subsystem 2020-07-08 21:05:36 -04:00
settings settings: disallow modifying the content of a static subtree name 2020-07-27 19:03:44 +02:00
shell shell: Add support for logging v2 2021-04-19 10:59:23 -04:00
stats zephyr: replace zephyr integer types with C99 types 2020-06-08 08:23:57 -05:00
storage storage/stream: Add persistent write progress to stream_flash 2021-04-23 15:01:32 -05:00
sys lib: os: cbprintf: Improve C++ support in static packaging 2021-05-05 08:45:43 -04:00
task_wdt task_wdt: add task-level watchdog subsystem 2021-03-15 12:24:54 +01:00
timing timing: guard the header with CONFIG_TIMING_FUNCTIONS 2021-04-06 16:43:55 -04:00
toolchain toolchain: add llvm abstraction 2021-04-22 07:42:58 -04:00
tracing tracing: remove cpu_stats in favor of thread runtime stats 2021-04-16 15:31:24 -04:00
usb usb: dfu: give wait_for_usb_dfu an argument 2021-03-22 12:55:56 +01:00
zephyr zephyr: Remove support for deprecated int types 2021-03-05 04:56:13 -06:00
cache.h cache: libmetal: Redirect sys_cache_flush() 2021-01-19 14:31:02 -05:00
device.h pm: move device_set/get_power_state to pm/device.h 2021-05-05 18:35:49 -04:00
devicetree.h devicetree: Add DT_FOREACH_CHILD_STATUS_OKAY macro 2021-04-27 13:32:55 -04:00
ec_host_cmd.h include: Move ec_host_cmd.h to mgmt/ec_host_cmd.h 2021-04-22 12:51:16 -04:00
emul.h include: Move emul.h to drivers/emul.h 2021-04-22 12:51:01 -04:00
exc_handle.h kernel: rename z_arch_ to arch_ 2019-11-07 15:21:46 -08:00
fatal.h doc: fix misspelling in API doxygen comments 2019-10-29 06:00:14 +01:00
generated_dts_board.h license: add missing SPDX headers 2021-02-11 08:05:16 -05:00
init.h init: tweak Zephyr .init* section name conflicting with toolchain 2021-04-26 14:15:43 -04:00
irq.h irq: document requirement that irq_lock/unlock provides a memory barrier 2021-01-26 13:42:17 -05:00
irq_nextlevel.h device: Const-ify all device driver instance pointers 2020-09-02 13:48:13 +02:00
irq_offload.h irq_offload: Remove ifdef from the api 2021-04-29 14:50:35 +02:00
kernel.h smp: add a Kconfig option to delay booting secondary CPUs 2021-05-03 17:13:01 -04:00
kernel_includes.h kernel: move thread definitions to thread.h 2021-01-13 18:18:42 -05:00
kernel_structs.h kernel: add an architecture specific structs header 2021-04-21 09:03:47 -04:00
kernel_version.h zephyr: replace zephyr integer types with C99 types 2020-06-08 08:23:57 -05:00
mempool_heap.h kernel: Remove z_mem_pool wrapper internals 2020-12-07 21:50:14 -05:00
ptp_clock.h include: Move ptp_clock.h to drivers/ptp_clock.h 2021-03-25 10:09:33 +02:00
sched_priq.h cleanup: include/: move misc/util.h to sys/util.h 2019-06-27 22:55:49 -04:00
shared_irq.h drivers: intc: shared_irq: remove internal structs from header 2021-04-13 13:03:33 -04:00
spinlock.h kernel: fix usage of KERNEL_COHERENCE macro 2021-02-03 10:42:04 -05:00
sw_isr_table.h irq: Change dynamic API to take a constant parameter 2020-09-02 13:48:13 +02:00
sys_clock.h kernel: remove tickless idle 2021-03-19 11:22:17 -04:00
syscall.h userspace: rename _is_user_context -> k_is_user_context 2021-04-01 05:34:17 -04:00
syscall_handler.h kernel: Cleanup logger setup in kernel files 2020-11-27 09:56:34 -05:00
timeout_q.h kernel/arch: cleanup function definitions 2021-04-01 05:34:17 -04:00
toolchain.h toolchain: add llvm abstraction 2021-04-22 07:42:58 -04:00
wait_q.h headers: Refactor kernel and arch headers. 2019-11-06 16:07:32 -08:00
zephyr.h headers: Fix headers across the project 2018-09-17 15:49:26 -04:00