1 /* 2 * Copyright (c) 2022-2023 Qualcomm Innovation Center, Inc. All rights reserved. 3 * 4 * Permission to use, copy, modify, and/or distribute this software for any 5 * purpose with or without fee is hereby granted, provided that the above 6 * copyright notice and this permission notice appear in all copies. 7 * 8 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 9 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 10 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 11 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 12 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 13 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 14 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 15 */ 16 /** 17 * DOC: declare WIFI POS interface APIs exposed by the mlme component 18 */ 19 20 #ifndef _WLAN_WIFI_POS_IFACE_API_H_ 21 #define _WLAN_WIFI_POS_IFACE_API_H_ 22 23 #include <wlan_objmgr_vdev_obj.h> 24 #include "lim_types.h" 25 #include "wifi_pos_pasn_api.h" 26 27 #if defined(WIFI_POS_CONVERGED) && defined(WLAN_FEATURE_RTT_11AZ_SUPPORT) 28 /** 29 * wlan_wifi_pos_pasn_peer_delete_all - Delete all pasn peer callback 30 * @psoc: Psoc pointer 31 * @vdev_id: vdev for which PASN peers are to be deleted 32 * 33 * Return: True if PASN peer delete all is required 34 */ 35 bool wlan_wifi_pos_pasn_peer_delete_all(struct wlan_objmgr_psoc *psoc, 36 uint8_t vdev_id); 37 38 /** 39 * wifi_pos_register_legacy_ops() - Register wifi pos legacy callbacks 40 * @psoc: Psoc pointer 41 * 42 * Return: QDF_STATUS 43 */ 44 QDF_STATUS 45 wifi_pos_register_legacy_ops(struct wlan_objmgr_psoc *psoc); 46 47 /** 48 * wifi_pos_deregister_legacy_ops() - Deregister wifi pos legacy callbacks 49 * @psoc: Psoc pointer 50 * 51 * Return: QDF_STATUS 52 */ 53 QDF_STATUS 54 wifi_pos_deregister_legacy_ops(struct wlan_objmgr_psoc *psoc); 55 #else 56 static inline QDF_STATUS wifi_pos_register_legacy_ops(struct wlan_objmgr_psoc * psoc)57 wifi_pos_register_legacy_ops(struct wlan_objmgr_psoc *psoc) 58 { 59 return QDF_STATUS_SUCCESS; 60 } 61 62 static inline QDF_STATUS wifi_pos_deregister_legacy_ops(struct wlan_objmgr_psoc * psoc)63 wifi_pos_deregister_legacy_ops(struct wlan_objmgr_psoc *psoc) 64 { 65 return QDF_STATUS_SUCCESS; 66 } 67 68 static inline bool wlan_wifi_pos_pasn_peer_delete_all(struct wlan_objmgr_psoc * psoc,uint8_t vdev_id)69 wlan_wifi_pos_pasn_peer_delete_all(struct wlan_objmgr_psoc *psoc, 70 uint8_t vdev_id) 71 { 72 return false; 73 } 74 #endif 75 #endif /* _WLAN_WIFI_POS_IFACE_API_H_ */ 76