|
@@ -224,6 +224,9 @@ static inline void init_deinit_update_tdls_caps(struct wmi_unified *wmi_handle,
|
|
|
{}
|
|
|
#endif
|
|
|
|
|
|
+static void init_deinit_mlo_tsf_sync_support(struct wmi_unified *wmi_handle,
|
|
|
+ struct wlan_objmgr_psoc *psoc);
|
|
|
+
|
|
|
static int init_deinit_service_ready_event_handler(ol_scn_t scn_handle,
|
|
|
uint8_t *event,
|
|
|
uint32_t data_len)
|
|
@@ -380,6 +383,8 @@ static int init_deinit_service_ready_event_handler(ol_scn_t scn_handle,
|
|
|
init_deinit_update_wifi_pos_caps(wmi_handle, psoc);
|
|
|
init_deinit_update_tdls_caps(wmi_handle, psoc);
|
|
|
|
|
|
+ init_deinit_mlo_tsf_sync_support(wmi_handle, psoc);
|
|
|
+
|
|
|
/* override derived value, if it exceeds max peer count */
|
|
|
if ((wlan_psoc_get_max_peer_count(psoc) >
|
|
|
tgt_hdl->info.wlan_res_cfg.num_active_peers) &&
|
|
@@ -854,12 +859,30 @@ static void init_deinit_mlo_update_pdev_ready(struct wlan_objmgr_psoc *psoc,
|
|
|
init_deinit_send_ml_link_ready,
|
|
|
NULL, 0, WLAN_INIT_DEINIT_ID);
|
|
|
}
|
|
|
+
|
|
|
+static void init_deinit_mlo_tsf_sync_support(struct wmi_unified *wmi_handle,
|
|
|
+ struct wlan_objmgr_psoc *psoc)
|
|
|
+{
|
|
|
+ bool mlo_tsf_sync_enab = false;
|
|
|
+
|
|
|
+ if (!init_deinit_mlo_capable(psoc))
|
|
|
+ return;
|
|
|
+
|
|
|
+ if (wmi_service_enabled(wmi_handle, wmi_service_mlo_tsf_sync))
|
|
|
+ mlo_tsf_sync_enab = true;
|
|
|
+
|
|
|
+ mlo_update_tsf_sync_support(psoc, mlo_tsf_sync_enab);
|
|
|
+}
|
|
|
+
|
|
|
#else
|
|
|
static void init_deinit_mlo_update_soc_ready(struct wlan_objmgr_psoc *psoc)
|
|
|
{}
|
|
|
static void init_deinit_mlo_update_pdev_ready(struct wlan_objmgr_psoc *psoc,
|
|
|
uint8_t num_radios)
|
|
|
{}
|
|
|
+static void init_deinit_mlo_tsf_sync_support(struct wmi_unified *wmi_handle,
|
|
|
+ struct wlan_objmgr_psoc *psoc)
|
|
|
+{}
|
|
|
#endif /*WLAN_FEATURE_11BE_MLO && WLAN_MLO_MULTI_CHIP*/
|
|
|
|
|
|
/* MAC address fourth byte index */
|