@@ -47,9 +47,19 @@ const uint8_t *ull_adv_pdu_update_addrs(struct ll_adv_set *adv,
4747#if defined(CONFIG_BT_CTLR_ADV_EXT )
4848
4949#define ULL_ADV_PDU_HDR_FIELD_ADVA BIT(0)
50+ #define ULL_ADV_PDU_HDR_FIELD_CTE_INFO BIT(2)
51+ #define ULL_ADV_PDU_HDR_FIELD_AUX_PTR BIT(4)
5052#define ULL_ADV_PDU_HDR_FIELD_SYNC_INFO BIT(5)
5153#define ULL_ADV_PDU_HDR_FIELD_AD_DATA BIT(8)
5254
55+ /* Helper type to store data for extended advertising
56+ * header fields and extra data.
57+ */
58+ struct adv_pdu_field_data {
59+ uint8_t * field_data ;
60+ void * extra_data ;
61+ };
62+
5363/* helper function to handle adv done events */
5464void ull_adv_done (struct node_rx_event_done * done );
5565
@@ -91,6 +101,15 @@ uint8_t ull_adv_aux_hdr_set_clear(struct ll_adv_set *adv,
91101 struct pdu_adv_adi * adi ,
92102 uint8_t * pri_idx );
93103
104+ /* helper function to set/clear common extended header format fields
105+ * for AUX_SYNC_IND PDU.
106+ */
107+ uint8_t ull_adv_sync_pdu_set_clear (struct ll_adv_set * adv ,
108+ uint16_t hdr_add_fields ,
109+ uint16_t hdr_rem_fields ,
110+ struct adv_pdu_field_data * data ,
111+ uint8_t * ter_idx );
112+
94113/* helper function to calculate common ext adv payload header length and
95114 * adjust the data pointer.
96115 * NOTE: This function reverts the header data pointer if there is no
@@ -129,12 +148,23 @@ int ull_adv_sync_init(void);
129148int ull_adv_sync_reset (void );
130149
131150/* helper function to start periodic advertising */
132- uint32_t ull_adv_sync_start (struct ll_adv_sync_set * sync ,
151+ uint32_t ull_adv_sync_start (struct ll_adv_set * adv ,
152+ struct ll_adv_sync_set * sync ,
133153 uint32_t ticks_anchor );
134154
155+ /* helper function to update periodic advertising event length */
156+ void ull_adv_sync_update (struct ll_adv_sync_set * sync , uint32_t slot_plus_us ,
157+ uint32_t slot_minus_us );
158+
135159/* helper function to schedule a mayfly to get sync offset */
136160void ull_adv_sync_offset_get (struct ll_adv_set * adv );
137161
138162int ull_adv_iso_init (void );
139163int ull_adv_iso_reset (void );
164+
165+ #if IS_ENABLED (CONFIG_BT_CTLR_DF_ADV_CTE_TX )
166+ /* helper function to release unused DF configuration memory */
167+ void ull_df_adv_cfg_release (struct lll_df_adv_cfg * df_adv_cfg );
168+ #endif /* CONFIG_BT_CTLR_DF_ADV_CTE_TX */
169+
140170#endif /* CONFIG_BT_CTLR_ADV_EXT */
0 commit comments