Lines Matching refs:seg_tx

68 static struct seg_tx {  struct
95 } seg_tx[CONFIG_BT_MESH_TX_SEG_MSG_COUNT]; argument
187 for (i = 0; i < ARRAY_SIZE(seg_tx); i++) { in bt_mesh_tx_in_progress()
188 if (seg_tx[i].nack_count) { in bt_mesh_tx_in_progress()
196 static void seg_tx_done(struct seg_tx *tx, uint8_t seg_idx) in seg_tx_done()
203 static bool seg_tx_blocks(struct seg_tx *tx, uint16_t src, uint16_t dst) in seg_tx_blocks()
208 static void seg_tx_unblock_check(struct seg_tx *tx) in seg_tx_unblock_check()
210 struct seg_tx *blocked = NULL; in seg_tx_unblock_check()
214 for (i = 0; i < ARRAY_SIZE(seg_tx); ++i) { in seg_tx_unblock_check()
215 if (&seg_tx[i] != tx && in seg_tx_unblock_check()
216 seg_tx[i].blocked && in seg_tx_unblock_check()
217 seg_tx_blocks(tx, seg_tx[i].src, seg_tx[i].dst) && in seg_tx_unblock_check()
218 (!blocked || seg_tx[i].seq_auth < blocked->seq_auth)) { in seg_tx_unblock_check()
219 blocked = &seg_tx[i]; in seg_tx_unblock_check()
230 static void seg_tx_reset(struct seg_tx *tx) in seg_tx_reset()
267 static inline void seg_tx_complete(struct seg_tx *tx, int err) in seg_tx_complete()
281 static void schedule_transmit_continue(struct seg_tx *tx, uint32_t delta) in schedule_transmit_continue()
307 struct seg_tx *tx = user_data; in seg_send_start()
328 struct seg_tx *tx = user_data; in seg_sent()
343 static void seg_tx_buf_build(struct seg_tx *tx, uint8_t seg_o, in seg_tx_buf_build()
356 static void seg_tx_send_unacked(struct seg_tx *tx) in seg_tx_send_unacked()
480 struct seg_tx *tx = CONTAINER_OF(dwork, struct seg_tx, retransmit); in seg_retransmit()
490 struct seg_tx *tx; in send_seg()
497 for (tx = NULL, i = 0; i < ARRAY_SIZE(seg_tx); i++) { in send_seg()
498 if (seg_tx[i].nack_count) { in send_seg()
499 blocked |= seg_tx_blocks(&seg_tx[i], net_tx->src, in send_seg()
502 tx = &seg_tx[i]; in send_seg()
816 static struct seg_tx *seg_tx_lookup(uint16_t seq_zero, uint8_t obo, uint16_t addr) in seg_tx_lookup()
818 struct seg_tx *tx; in seg_tx_lookup()
821 for (i = 0; i < ARRAY_SIZE(seg_tx); i++) { in seg_tx_lookup()
822 tx = &seg_tx[i]; in seg_tx_lookup()
850 struct seg_tx *tx; in trans_ack()
1719 for (i = 0; i < ARRAY_SIZE(seg_tx); i++) { in bt_mesh_trans_reset()
1720 seg_tx_reset(&seg_tx[i]); in bt_mesh_trans_reset()
1731 for (i = 0; i < ARRAY_SIZE(seg_tx); i++) { in bt_mesh_trans_init()
1732 k_work_init_delayable(&seg_tx[i].retransmit, seg_retransmit); in bt_mesh_trans_init()