1 /* SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause */ 2 /* 3 * Copyright (C) 2025 Intel Corporation 4 */ 5 #ifndef __iwl_mld_time_sync_h__ 6 #define __iwl_mld_time_sync_h__ 7 8 struct iwl_mld_time_sync_data { 9 struct rcu_head rcu_head; 10 u8 peer_addr[ETH_ALEN]; 11 u32 active_protocols; 12 struct sk_buff_head frame_list; 13 }; 14 15 int iwl_mld_time_sync_config(struct iwl_mld *mld, const u8 *addr, 16 u32 protocols); 17 int iwl_mld_time_sync_fw_config(struct iwl_mld *mld); 18 void iwl_mld_deinit_time_sync(struct iwl_mld *mld); 19 void iwl_mld_handle_time_msmt_notif(struct iwl_mld *mld, 20 struct iwl_rx_packet *pkt); 21 bool iwl_mld_time_sync_frame(struct iwl_mld *mld, struct sk_buff *skb, 22 u8 *addr); 23 void iwl_mld_handle_time_sync_confirm_notif(struct iwl_mld *mld, 24 struct iwl_rx_packet *pkt); 25 26 #endif /* __iwl_mld_time_sync_h__ */ 27