Bluetooth: Controller: Fix extended scanning assertion

Fix extended scanning assertion after long duration.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
This commit is contained in:
Vinayak Kariappa Chettimada 2024-01-19 06:49:37 +01:00 committed by Carles Cufí
commit ac39ad7249

View file

@ -915,11 +915,11 @@ static void isr_window(void *param)
}
lll_chan_set(37 + lll->chan);
#if defined(CONFIG_BT_CENTRAL) || defined(CONFIG_BT_CTLR_ADV_EXT)
#if defined(CONFIG_BT_CENTRAL)
bool is_sched_advanced = IS_ENABLED(CONFIG_BT_CTLR_SCHED_ADVANCED) &&
lll->conn && lll->conn_win_offset_us;
uint32_t ticks_anchor_prev;
uint32_t ticks_at_start;
if (is_sched_advanced) {
/* Get the ticks_anchor when the offset to free time space for
@ -932,14 +932,17 @@ static void isr_window(void *param)
} else {
ticks_anchor_prev = 0U;
}
#endif /* CONFIG_BT_CENTRAL */
uint32_t ticks_at_start;
ticks_at_start = ticker_ticks_now_get() +
HAL_TICKER_CNTR_CMP_OFFSET_MIN;
remainder_us = radio_tmr_start_tick(0, ticks_at_start);
#else /* !CONFIG_BT_CENTRAL */
#else /* !CONFIG_BT_CENTRAL && !CONFIG_BT_CTLR_ADV_EXT */
remainder_us = radio_tmr_start_now(0);
#endif /* !CONFIG_BT_CENTRAL */
#endif /* !CONFIG_BT_CENTRAL && !CONFIG_BT_CTLR_ADV_EXT */
/* capture end of Rx-ed PDU, for initiator to calculate first
* central event.