Bluetooth: controller: refactor ll_rx_put/sched
Instead of calling both ll_rx_put and ll_rx_sched, combine into one function Signed-off-by: Erik Brockhoff <erbr@oticon.com>
This commit is contained in:
parent
ee2a43b5dc
commit
ddeb0e9f6e
18 changed files with 58 additions and 90 deletions
|
@ -1733,6 +1733,12 @@ void ll_rx_sched(void)
|
|||
k_sem_give(sem_recv);
|
||||
}
|
||||
|
||||
void ll_rx_put_sched(memq_link_t *link, void *rx)
|
||||
{
|
||||
ll_rx_put(link, rx);
|
||||
ll_rx_sched();
|
||||
}
|
||||
|
||||
#if defined(CONFIG_BT_CONN)
|
||||
void *ll_pdu_rx_alloc_peek(uint8_t count)
|
||||
{
|
||||
|
@ -2745,8 +2751,7 @@ static inline int rx_demux_rx(memq_link_t *link, struct node_rx_hdr *rx)
|
|||
|
||||
adv = (void *)((struct node_rx_pdu *)rx)->pdu;
|
||||
if (adv->type != PDU_ADV_TYPE_EXT_IND) {
|
||||
ll_rx_put(link, rx);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(link, rx);
|
||||
break;
|
||||
}
|
||||
|
||||
|
@ -2779,8 +2784,7 @@ static inline int rx_demux_rx(memq_link_t *link, struct node_rx_hdr *rx)
|
|||
case NODE_RX_TYPE_IQ_SAMPLE_REPORT_LLL_RELEASE:
|
||||
{
|
||||
(void)memq_dequeue(memq_ull_rx.tail, &memq_ull_rx.head, NULL);
|
||||
ll_rx_put(link, rx);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(link, rx);
|
||||
}
|
||||
break;
|
||||
#endif /* CONFIG_BT_CTLR_DF_SCAN_CTE_RX || CONFIG_BT_CTLR_DF_CONN_CTE_RX */
|
||||
|
@ -2805,8 +2809,7 @@ static inline int rx_demux_rx(memq_link_t *link, struct node_rx_hdr *rx)
|
|||
(void)memq_dequeue(memq_ull_rx.tail, &memq_ull_rx.head, NULL);
|
||||
|
||||
if (rx) {
|
||||
ll_rx_put(link, rx);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(link, rx);
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
@ -2855,8 +2858,7 @@ static inline int rx_demux_rx(memq_link_t *link, struct node_rx_hdr *rx)
|
|||
case NODE_RX_TYPE_RELEASE:
|
||||
{
|
||||
(void)memq_dequeue(memq_ull_rx.tail, &memq_ull_rx.head, NULL);
|
||||
ll_rx_put(link, rx);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(link, rx);
|
||||
}
|
||||
break;
|
||||
#endif /* CONFIG_BT_OBSERVER ||
|
||||
|
|
|
@ -2526,8 +2526,7 @@ static void disabled_cb(void *param)
|
|||
}
|
||||
#endif /* CONFIG_BT_CTLR_ADV_EXT */
|
||||
|
||||
ll_rx_put(link, rx);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(link, rx);
|
||||
}
|
||||
|
||||
static void conn_release(struct ll_adv_set *adv)
|
||||
|
@ -2697,8 +2696,7 @@ static void ext_disabled_cb(void *param)
|
|||
|
||||
/* NOTE: parameters are already populated on disable, just enqueue here
|
||||
*/
|
||||
ll_rx_put(rx_hdr->link, rx_hdr);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(rx_hdr->link, rx_hdr);
|
||||
}
|
||||
#endif /* CONFIG_BT_CTLR_ADV_EXT */
|
||||
|
||||
|
|
|
@ -674,8 +674,7 @@ void ull_adv_iso_done_complete(struct node_rx_event_done *done)
|
|||
rx->handle = lll->handle;
|
||||
rx->rx_ftr.param = adv_iso;
|
||||
|
||||
ll_rx_put(link, rx);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(link, rx);
|
||||
}
|
||||
|
||||
void ull_adv_iso_done_terminate(struct node_rx_event_done *done)
|
||||
|
|
|
@ -952,8 +952,7 @@ void ull_central_setup(struct node_rx_hdr *rx, struct node_rx_ftr *ftr,
|
|||
}
|
||||
}
|
||||
|
||||
ll_rx_put(link, rx);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(link, rx);
|
||||
|
||||
ticks_slot_offset = MAX(conn->ull.ticks_active_to_start,
|
||||
conn->ull.ticks_prepare_to_start);
|
||||
|
|
|
@ -1768,8 +1768,7 @@ void ull_conn_done(struct node_rx_event_done *done)
|
|||
rx->type = NODE_RX_TYPE_APTO;
|
||||
|
||||
/* enqueue apto event into rx queue */
|
||||
ll_rx_put(rx->link, rx);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(rx->link, rx);
|
||||
} else {
|
||||
conn->apto_expire = 1U;
|
||||
}
|
||||
|
@ -1845,8 +1844,7 @@ void ull_conn_done(struct node_rx_event_done *done)
|
|||
pdu_data_rx->rssi = lll->rssi_reported;
|
||||
|
||||
/* enqueue connection RSSI structure into queue */
|
||||
ll_rx_put(rx->hdr.link, rx);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(rx->hdr.link, rx);
|
||||
}
|
||||
}
|
||||
#endif /* CONFIG_BT_CTLR_CONN_RSSI_EVENT */
|
||||
|
@ -3357,8 +3355,7 @@ static inline int event_conn_upd_prep(struct ll_conn *conn, uint16_t lazy,
|
|||
rx_hold_put(conn, rx->hdr.link, rx);
|
||||
#else /* !CONFIG_BT_CTLR_RX_ENQUEUE_HOLD */
|
||||
/* enqueue rx node towards Thread */
|
||||
ll_rx_put(rx->hdr.link, rx);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(rx->hdr.link, rx);
|
||||
#endif /* !CONFIG_BT_CTLR_RX_ENQUEUE_HOLD */
|
||||
|
||||
} else {
|
||||
|
@ -3366,8 +3363,7 @@ static inline int event_conn_upd_prep(struct ll_conn *conn, uint16_t lazy,
|
|||
rx->hdr.type = NODE_RX_TYPE_RELEASE;
|
||||
|
||||
/* enqueue rx node towards Thread */
|
||||
ll_rx_put(rx->hdr.link, rx);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(rx->hdr.link, rx);
|
||||
}
|
||||
|
||||
#if defined(CONFIG_BT_CTLR_XTAL_ADVANCED)
|
||||
|
@ -3697,8 +3693,7 @@ static inline void event_enc_prep(struct ll_conn *conn)
|
|||
pdu->llctrl.enc_req.ediv[1] = conn->llcp_enc.ediv[1];
|
||||
|
||||
/* enqueue enc req structure into rx queue */
|
||||
ll_rx_put(rx->hdr.link, rx);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(rx->hdr.link, rx);
|
||||
|
||||
/* Wait for LTK reply */
|
||||
conn->llcp.encryption.state = LLCP_ENC_STATE_LTK_WAIT;
|
||||
|
@ -3863,8 +3858,7 @@ static inline void event_fex_prep(struct ll_conn *conn)
|
|||
pdu->llctrl.feature_req.features);
|
||||
|
||||
/* enqueue feature rsp structure into rx queue */
|
||||
ll_rx_put(rx->hdr.link, rx);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(rx->hdr.link, rx);
|
||||
|
||||
return;
|
||||
}
|
||||
|
@ -3976,8 +3970,7 @@ static inline void event_vex_prep(struct ll_conn *conn)
|
|||
sys_cpu_to_le16(conn->llcp_version.sub_version_number);
|
||||
|
||||
/* enqueue version ind structure into rx queue */
|
||||
ll_rx_put(rx->hdr.link, rx);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(rx->hdr.link, rx);
|
||||
} else {
|
||||
/* tx-ed but no rx, and new request placed */
|
||||
LL_ASSERT(0);
|
||||
|
@ -4240,8 +4233,7 @@ static inline void event_conn_param_app_req(struct ll_conn *conn)
|
|||
p->timeout = sys_cpu_to_le16(conn->llcp_conn_param.timeout);
|
||||
|
||||
/* enqueue connection parameter request into rx queue */
|
||||
ll_rx_put(rx->hdr.link, rx);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(rx->hdr.link, rx);
|
||||
}
|
||||
|
||||
static inline void event_conn_param_prep(struct ll_conn *conn,
|
||||
|
@ -4552,8 +4544,7 @@ static inline void event_len_prep(struct ll_conn *conn)
|
|||
#endif /* CONFIG_BT_CTLR_PHY */
|
||||
|
||||
/* enqueue rx node towards Thread */
|
||||
ll_rx_put(rx->hdr.link, rx);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(rx->hdr.link, rx);
|
||||
}
|
||||
break;
|
||||
|
||||
|
@ -4760,8 +4751,7 @@ static inline void event_phy_upd_ind_prep(struct ll_conn *conn,
|
|||
upd->rx = lll->phy_rx;
|
||||
|
||||
/* Enqueue Rx node */
|
||||
ll_rx_put(rx->hdr.link, rx);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(rx->hdr.link, rx);
|
||||
}
|
||||
} else {
|
||||
struct lll_conn *lll = &conn->lll;
|
||||
|
@ -4951,8 +4941,7 @@ static inline void event_phy_upd_ind_prep(struct ll_conn *conn,
|
|||
rx->hdr.type = NODE_RX_TYPE_RELEASE;
|
||||
|
||||
/* enqueue rx node towards Thread */
|
||||
ll_rx_put(rx->hdr.link, rx);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(rx->hdr.link, rx);
|
||||
return;
|
||||
}
|
||||
lll->max_tx_time = eff_tx_time;
|
||||
|
|
|
@ -277,8 +277,7 @@ void ull_conn_iso_cis_established(struct ll_conn_iso_stream *cis)
|
|||
est->status = 0;
|
||||
est->cis_handle = cis->lll.handle;
|
||||
|
||||
ll_rx_put(node_rx->hdr.link, node_rx);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(node_rx->hdr.link, node_rx);
|
||||
#endif /* defined(CONFIG_BT_LL_SW_LLCP_LEGACY) */
|
||||
|
||||
cis->established = 1;
|
||||
|
@ -890,8 +889,7 @@ static void cis_disabled_cb(void *param)
|
|||
node_terminate->hdr.type = NODE_RX_TYPE_TERMINATE;
|
||||
*((uint8_t *)node_terminate->pdu) = cis->terminate_reason;
|
||||
|
||||
ll_rx_put(node_terminate->hdr.link, node_terminate);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(node_terminate->hdr.link, node_terminate);
|
||||
|
||||
if (cig->lll.resume_cis == cis->lll.handle) {
|
||||
/* Resume pending for terminating CIS - stop ticker */
|
||||
|
|
|
@ -72,6 +72,7 @@ void *ll_rx_alloc(void);
|
|||
void ll_rx_release(void *node_rx);
|
||||
void *ll_pdu_rx_alloc_peek(uint8_t count);
|
||||
void *ll_pdu_rx_alloc(void);
|
||||
void ll_rx_put_sched(memq_link_t *link, void *rx);
|
||||
void ll_rx_put(memq_link_t *link, void *rx);
|
||||
void ll_rx_sched(void);
|
||||
void ull_ticker_status_give(uint32_t status, void *param);
|
||||
|
|
|
@ -85,8 +85,7 @@ static void cc_ntf_established(struct ll_conn *conn, struct proc_ctx *ctx)
|
|||
pdu->status = ctx->data.cis_create.error;
|
||||
|
||||
/* Enqueue notification towards LL */
|
||||
ll_rx_put(ntf->hdr.link, ntf);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(ntf->hdr.link, ntf);
|
||||
}
|
||||
|
||||
#if defined(CONFIG_BT_PERIPHERAL)
|
||||
|
@ -212,8 +211,7 @@ static void rp_cc_ntf_create(struct ll_conn *conn, struct proc_ctx *ctx)
|
|||
ctx->data.cis_create.host_request_to = 0U;
|
||||
|
||||
/* Enqueue notification towards LL */
|
||||
ll_rx_put(ntf->hdr.link, ntf);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(ntf->hdr.link, ntf);
|
||||
}
|
||||
|
||||
static void rp_cc_complete(struct ll_conn *conn, struct proc_ctx *ctx, uint8_t evt, void *param)
|
||||
|
|
|
@ -412,8 +412,7 @@ static void lp_comm_ntf(struct ll_conn *conn, struct proc_ctx *ctx)
|
|||
}
|
||||
|
||||
/* Enqueue notification towards LL */
|
||||
ll_rx_put(ntf->hdr.link, ntf);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(ntf->hdr.link, ntf);
|
||||
}
|
||||
|
||||
static void lp_comm_terminate_invalid_pdu(struct ll_conn *conn, struct proc_ctx *ctx)
|
||||
|
@ -1187,8 +1186,7 @@ static void rp_comm_ntf(struct ll_conn *conn, struct proc_ctx *ctx)
|
|||
}
|
||||
|
||||
/* Enqueue notification towards LL */
|
||||
ll_rx_put(ntf->hdr.link, ntf);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(ntf->hdr.link, ntf);
|
||||
}
|
||||
#endif /* CONFIG_BT_CTLR_DATA_LENGTH */
|
||||
|
||||
|
|
|
@ -304,8 +304,7 @@ static void lp_cu_ntf(struct ll_conn *conn, struct proc_ctx *ctx)
|
|||
}
|
||||
|
||||
/* Enqueue notification towards LL */
|
||||
ll_rx_put(ntf->hdr.link, ntf);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(ntf->hdr.link, ntf);
|
||||
}
|
||||
|
||||
static void lp_cu_complete(struct ll_conn *conn, struct proc_ctx *ctx)
|
||||
|
@ -760,8 +759,7 @@ static void rp_cu_ntf(struct ll_conn *conn, struct proc_ctx *ctx)
|
|||
pdu->timeout = conn->supervision_timeout;
|
||||
}
|
||||
/* Enqueue notification towards LL */
|
||||
ll_rx_put(ntf->hdr.link, ntf);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(ntf->hdr.link, ntf);
|
||||
}
|
||||
|
||||
#if defined(CONFIG_BT_CTLR_CONN_PARAM_REQ)
|
||||
|
@ -781,8 +779,7 @@ static void rp_cu_conn_param_req_ntf(struct ll_conn *conn, struct proc_ctx *ctx)
|
|||
llcp_pdu_encode_conn_param_req(ctx, pdu);
|
||||
|
||||
/* Enqueue notification towards LL */
|
||||
ll_rx_put(ntf->hdr.link, ntf);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(ntf->hdr.link, ntf);
|
||||
}
|
||||
#endif /* CONFIG_BT_CTLR_CONN_PARAM_REQ */
|
||||
|
||||
|
|
|
@ -216,8 +216,7 @@ static void lp_enc_ntf(struct ll_conn *conn, struct proc_ctx *ctx)
|
|||
}
|
||||
|
||||
/* Enqueue notification towards LL */
|
||||
ll_rx_put(ntf->hdr.link, ntf);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(ntf->hdr.link, ntf);
|
||||
}
|
||||
|
||||
static void lp_enc_complete(struct ll_conn *conn, struct proc_ctx *ctx, uint8_t evt, void *param)
|
||||
|
@ -759,8 +758,7 @@ static void rp_enc_ntf_ltk(struct ll_conn *conn, struct proc_ctx *ctx)
|
|||
llcp_ntf_encode_enc_req(ctx, pdu);
|
||||
|
||||
/* Enqueue notification towards LL */
|
||||
ll_rx_put(ntf->hdr.link, ntf);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(ntf->hdr.link, ntf);
|
||||
}
|
||||
|
||||
static void rp_enc_ntf(struct ll_conn *conn, struct proc_ctx *ctx)
|
||||
|
@ -789,8 +787,7 @@ static void rp_enc_ntf(struct ll_conn *conn, struct proc_ctx *ctx)
|
|||
}
|
||||
|
||||
/* Enqueue notification towards LL */
|
||||
ll_rx_put(ntf->hdr.link, ntf);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(ntf->hdr.link, ntf);
|
||||
}
|
||||
|
||||
static void rp_enc_send_start_enc_rsp(struct ll_conn *conn, struct proc_ctx *ctx, uint8_t evt,
|
||||
|
|
|
@ -423,8 +423,7 @@ static void pu_ntf(struct ll_conn *conn, struct proc_ctx *ctx)
|
|||
pdu->tx = conn->lll.phy_tx;
|
||||
|
||||
/* Enqueue notification towards LL */
|
||||
ll_rx_put(ntf->hdr.link, ntf);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(ntf->hdr.link, ntf);
|
||||
ctx->data.pu.ntf_pu = 0;
|
||||
}
|
||||
|
||||
|
@ -445,8 +444,7 @@ static void pu_dle_ntf(struct ll_conn *conn, struct proc_ctx *ctx)
|
|||
llcp_ntf_encode_length_change(conn, pdu);
|
||||
|
||||
/* Enqueue notification towards LL */
|
||||
ll_rx_put(ntf->hdr.link, ntf);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(ntf->hdr.link, ntf);
|
||||
}
|
||||
#endif
|
||||
|
||||
|
|
|
@ -349,8 +349,7 @@ void ull_periph_setup(struct node_rx_hdr *rx, struct node_rx_ftr *ftr,
|
|||
}
|
||||
#endif
|
||||
|
||||
ll_rx_put(link, rx);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(link, rx);
|
||||
|
||||
#if defined(CONFIG_BT_CTLR_DATA_LENGTH)
|
||||
#if defined(CONFIG_BT_CTLR_PHY)
|
||||
|
@ -671,8 +670,7 @@ static void invalid_release(struct ull_hdr *hdr, struct lll_conn *lll,
|
|||
}
|
||||
|
||||
/* Enqueue connection or CSA event to be release */
|
||||
ll_rx_put(link, rx);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(link, rx);
|
||||
}
|
||||
|
||||
static void ticker_op_stop_adv_cb(uint32_t status, void *param)
|
||||
|
|
|
@ -1120,8 +1120,7 @@ static void ext_disabled_cb(void *param)
|
|||
/* NOTE: parameters are already populated on disable,
|
||||
* just enqueue here
|
||||
*/
|
||||
ll_rx_put(rx_hdr->link, rx_hdr);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(rx_hdr->link, rx_hdr);
|
||||
}
|
||||
#endif /* CONFIG_BT_CTLR_ADV_EXT */
|
||||
|
||||
|
|
|
@ -566,8 +566,7 @@ void ull_scan_aux_setup(memq_link_t *link, struct node_rx_hdr *rx)
|
|||
sync_lll->lll_aux = lll_aux;
|
||||
|
||||
/* In sync context, dispatch immediately */
|
||||
ll_rx_put(link, rx);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(link, rx);
|
||||
} else {
|
||||
lll->lll_aux = lll_aux;
|
||||
}
|
||||
|
@ -745,8 +744,7 @@ ull_scan_aux_rx_flush:
|
|||
|
||||
LL_ASSERT(sync_lll);
|
||||
|
||||
ll_rx_put(link, rx);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(link, rx);
|
||||
|
||||
sync = HDR_LLL2ULL(sync_lll);
|
||||
if (unlikely(sync->is_stop && sync_lll->lll_aux)) {
|
||||
|
@ -1205,8 +1203,7 @@ static void aux_sync_partial(void *param)
|
|||
LL_ASSERT(rx);
|
||||
rx->rx_ftr.aux_sched = 1U;
|
||||
|
||||
ll_rx_put(rx->link, rx);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(rx->link, rx);
|
||||
}
|
||||
|
||||
static void aux_sync_incomplete(void *param)
|
||||
|
|
|
@ -951,8 +951,7 @@ void ull_sync_established_report(memq_link_t *link, struct node_rx_hdr *rx)
|
|||
* setup.
|
||||
*/
|
||||
|
||||
ll_rx_put(rx_establ->hdr.link, rx_establ);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(rx_establ->hdr.link, rx_establ);
|
||||
}
|
||||
|
||||
#if defined(CONFIG_BT_CTLR_SYNC_PERIODIC_CTE_TYPE_FILTERING)
|
||||
|
@ -976,8 +975,7 @@ void ull_sync_established_report(memq_link_t *link, struct node_rx_hdr *rx)
|
|||
ull_scan_aux_setup(link, rx);
|
||||
} else {
|
||||
rx->type = NODE_RX_TYPE_RELEASE;
|
||||
ll_rx_put(link, rx);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(link, rx);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1367,8 +1365,7 @@ static void sync_expire(void *param)
|
|||
/* NOTE: footer param has already been populated during sync setup */
|
||||
|
||||
/* Enqueue the sync failed to established towards ULL context */
|
||||
ll_rx_put(rx->hdr.link, rx);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(rx->hdr.link, rx);
|
||||
}
|
||||
|
||||
static void ticker_stop_sync_lost_op_cb(uint32_t status, void *param)
|
||||
|
@ -1413,8 +1410,7 @@ static void sync_lost(void *param)
|
|||
rx->hdr.rx_ftr.param = sync;
|
||||
|
||||
/* Enqueue the sync lost towards ULL context */
|
||||
ll_rx_put(rx->hdr.link, rx);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(rx->hdr.link, rx);
|
||||
}
|
||||
|
||||
#if defined(CONFIG_BT_CTLR_CHECK_SAME_PEER_SYNC)
|
||||
|
|
|
@ -495,8 +495,7 @@ void ull_sync_iso_estab_done(struct node_rx_event_done *done)
|
|||
se = (void *)rx->pdu;
|
||||
se->status = BT_HCI_ERR_SUCCESS;
|
||||
|
||||
ll_rx_put(rx->hdr.link, rx);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(rx->hdr.link, rx);
|
||||
|
||||
ull_sync_iso_done(done);
|
||||
}
|
||||
|
@ -804,6 +803,5 @@ static void disabled_cb(void *param)
|
|||
rx->hdr.link = NULL;
|
||||
|
||||
/* Enqueue the BIG sync lost towards ULL context */
|
||||
ll_rx_put(link, rx);
|
||||
ll_rx_sched();
|
||||
ll_rx_put_sched(link, rx);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue