zephyr/subsys
Piotr Pryga bb7a67d5be Bluetooth: Controller: Fix per sync cancel and sync establ synchronize
Current implementation of ll_sync_create_cancel does not allow to stop
synchronization after ull_sync_setup is called. When that is done,
sync->timeout_reload is not zero and the ll_sync_create_cancel will
return BT_HCI_ERR_CMD_DISALLOWED. That means the Controller is able to
cancel periodic advertising synchronization only in period between
call to ll_sync_create and reception of AUX_ADV_IND that has SyncInfo
field.

The Controller should be able to cancell synchronization until first
AUX_SYNC_IND PDU is received and host notified about synchronization
established.

Complete information about synchronization status is provdied by two
ll_sync_set members: node_rx_sync_established and timeout_reload.
These two members of the structure were used in ll_sync_create_cancel
function to do a proper cancel and cleanup.
The node_rx_sync_established member was not cleared when sync was
established or expired. That was required to get a proper information
about synchronization state.

Besides that, to avoid race condition between ll_sync_create_cancel
and ull_sync_established_report, the latter function was extended
to check if cancel operation or sync lost has happened.

Signed-off-by: Piotr Pryga <piotr.pryga@nordicsemi.no>
2022-05-17 11:39:09 +02:00
..
bluetooth Bluetooth: Controller: Fix per sync cancel and sync establ synchronize 2022-05-17 11:39:09 +02:00
canbus subsystems: migrate includes to <zephyr/...> 2022-05-09 12:07:35 +02:00
console subsystems: migrate includes to <zephyr/...> 2022-05-09 12:07:35 +02:00
cpp subsystems: migrate includes to <zephyr/...> 2022-05-09 12:07:35 +02:00
debug subsystems: migrate includes to <zephyr/...> 2022-05-09 12:07:35 +02:00
demand_paging subsystems: migrate includes to <zephyr/...> 2022-05-09 12:07:35 +02:00
dfu subsystems: migrate includes to <zephyr/...> 2022-05-09 12:07:35 +02:00
disk subsystems: migrate includes to <zephyr/...> 2022-05-09 12:07:35 +02:00
emul subsystems: migrate includes to <zephyr/...> 2022-05-09 12:07:35 +02:00
fb subsystems: migrate includes to <zephyr/...> 2022-05-09 12:07:35 +02:00
fs subsystems: migrate includes to <zephyr/...> 2022-05-09 12:07:35 +02:00
ipc ipc: static_vrings: Add -ENOMEM case 2022-05-16 16:56:33 +02:00
jwt subsystems: migrate includes to <zephyr/...> 2022-05-09 12:07:35 +02:00
logging logging: syst: embed log message source IDs in Sys-T messages 2022-05-09 12:54:53 -05:00
lorawan subsystems: migrate includes to <zephyr/...> 2022-05-09 12:07:35 +02:00
mgmt mgmt: img_mgmt: fix typo in variable name 2022-05-16 16:56:18 +02:00
modbus subsystems: migrate includes to <zephyr/...> 2022-05-09 12:07:35 +02:00
net net: lwm2m: Fix SenML CBOR input basename length 2022-05-13 10:15:27 -05:00
pm pm: device_runtime: return -ENOTSUP if PM not supported 2022-05-15 21:34:46 +02:00
portability subsystems: migrate includes to <zephyr/...> 2022-05-09 12:07:35 +02:00
random subsystems: migrate includes to <zephyr/...> 2022-05-09 12:07:35 +02:00
sd sd: increase SDMMC busy wait timeout 2022-05-09 08:46:29 -05:00
settings settings: add shell commands to write and delete settings 2022-05-13 10:11:40 -05:00
shell logging: shell: fix shell stats null pointer dereference 2022-05-15 21:32:10 +02:00
stats subsystems: migrate includes to <zephyr/...> 2022-05-09 12:07:35 +02:00
storage subsystems: migrate includes to <zephyr/...> 2022-05-09 12:07:35 +02:00
task_wdt subsystems: migrate includes to <zephyr/...> 2022-05-09 12:07:35 +02:00
testsuite ztest: use TESTSUITE instead of test suite in output 2022-05-13 12:16:57 -04:00
timing subsystems: migrate includes to <zephyr/...> 2022-05-09 12:07:35 +02:00
tracing subsystems: migrate includes to <zephyr/...> 2022-05-09 12:07:35 +02:00
usb usb: dfu: Enable progressive erase for MCUX FlexSPI flash 2022-05-09 08:54:30 -05:00
CMakeLists.txt sd: Add common SD initialization code 2022-04-29 14:21:36 -05:00
Kconfig sd: Add common SD initialization code 2022-04-29 14:21:36 -05:00