Bluetooth: controller: split: handle latency for cancelled conn events

Update implementation of master and slave LLL's to correctly
handle event counter values when latencies introduced due to
connection events cancelled by active events operating in
unreserved time space.

When an active radio event extends into unreserved time
space, and a connection event prepare is scheduled but at
the time of pre-emption timeout if the connection event is
cancelled then the event count and latencies needs to be
continiued to get acummulated.

In the current controller usecases the above scenarios does
not get exercised, the changes in this commit is needed for
future roles that can extend into unreserved time space and
would cancel a scheduled connection event.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
This commit is contained in:
Vinayak Kariappa Chettimada 2020-03-18 17:04:27 +05:30 committed by Carles Cufí
commit b3190cf24c
2 changed files with 2 additions and 4 deletions

View file

@ -78,8 +78,7 @@ void lll_master_prepare(void *param)
lll->latency_prepare += elapsed; lll->latency_prepare += elapsed;
/* Invoke common pipeline handling of prepare */ /* Invoke common pipeline handling of prepare */
err = lll_prepare(lll_is_abort_cb, lll_conn_abort_cb, prepare_cb, err = lll_prepare(lll_is_abort_cb, lll_conn_abort_cb, prepare_cb, 0, p);
0, p);
LL_ASSERT(!err || err == -EINPROGRESS); LL_ASSERT(!err || err == -EINPROGRESS);
} }

View file

@ -87,8 +87,7 @@ void lll_slave_prepare(void *param)
} }
/* Invoke common pipeline handling of prepare */ /* Invoke common pipeline handling of prepare */
err = lll_prepare(lll_conn_is_abort_cb, lll_conn_abort_cb, prepare_cb, err = lll_prepare(lll_is_abort_cb, lll_conn_abort_cb, prepare_cb, 0, p);
0, p);
LL_ASSERT(!err || err == -EINPROGRESS); LL_ASSERT(!err || err == -EINPROGRESS);
} }