1*5113495bSYour Name /* 2*5113495bSYour Name * Copyright (c) 2018 The Linux Foundation. All rights reserved. 3*5113495bSYour Name * Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved. 4*5113495bSYour Name * 5*5113495bSYour Name * Permission to use, copy, modify, and/or distribute this software for 6*5113495bSYour Name * any purpose with or without fee is hereby granted, provided that the 7*5113495bSYour Name * above copyright notice and this permission notice appear in all 8*5113495bSYour Name * copies. 9*5113495bSYour Name * 10*5113495bSYour Name * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL 11*5113495bSYour Name * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED 12*5113495bSYour Name * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE 13*5113495bSYour Name * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL 14*5113495bSYour Name * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR 15*5113495bSYour Name * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER 16*5113495bSYour Name * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR 17*5113495bSYour Name * PERFORMANCE OF THIS SOFTWARE. 18*5113495bSYour Name */ 19*5113495bSYour Name 20*5113495bSYour Name /** 21*5113495bSYour Name * DOC: declare the ftm service data structure and apis 22*5113495bSYour Name */ 23*5113495bSYour Name #ifndef _TARGET_IF_FTM_H_ 24*5113495bSYour Name #define _TARGET_IF_FTM_H_ 25*5113495bSYour Name 26*5113495bSYour Name #include <qdf_types.h> 27*5113495bSYour Name #include <qdf_status.h> 28*5113495bSYour Name #include <wlan_objmgr_psoc_obj.h> 29*5113495bSYour Name 30*5113495bSYour Name /** 31*5113495bSYour Name * target_if_ftm_register_tx_ops() - register ftm tx ops 32*5113495bSYour Name * @tx_ops: tx ops pointer 33*5113495bSYour Name * 34*5113495bSYour Name * Register ftm tx ops 35*5113495bSYour Name * 36*5113495bSYour Name * Return: QDF_STATUS 37*5113495bSYour Name */ 38*5113495bSYour Name QDF_STATUS target_if_ftm_register_tx_ops(struct wlan_lmac_if_tx_ops *tx_ops); 39*5113495bSYour Name 40*5113495bSYour Name /** 41*5113495bSYour Name * target_if_ftm_attach() - Register FW event handler 42*5113495bSYour Name * @psoc: psoc pointer 43*5113495bSYour Name * 44*5113495bSYour Name * Return: QDF_STATUS_SUCCESS on success, QDF_STATUS_E_** on error 45*5113495bSYour Name */ 46*5113495bSYour Name QDF_STATUS 47*5113495bSYour Name target_if_ftm_attach(struct wlan_objmgr_psoc *psoc); 48*5113495bSYour Name 49*5113495bSYour Name /** 50*5113495bSYour Name * target_if_ftm_detach() - De-Register FW event handler 51*5113495bSYour Name * @psoc: psoc pointer 52*5113495bSYour Name * 53*5113495bSYour Name * Return: QDF_STATUS_SUCCESS on success, QDF_STATUS_E_** on error 54*5113495bSYour Name */ 55*5113495bSYour Name QDF_STATUS 56*5113495bSYour Name target_if_ftm_detach(struct wlan_objmgr_psoc *psoc); 57*5113495bSYour Name 58*5113495bSYour Name /** 59*5113495bSYour Name * target_if_ftm_cmd_send() - Send WMI command for FTM requests 60*5113495bSYour Name * @pdev: pdev pointer 61*5113495bSYour Name * @buf: data to be sent to FW 62*5113495bSYour Name * @len: length of the data 63*5113495bSYour Name * @pdev_id: pdev id 64*5113495bSYour Name * 65*5113495bSYour Name * Return: QDF_STATUS_SUCCESS on success, QDF_STATUS_E_** on error 66*5113495bSYour Name */ 67*5113495bSYour Name QDF_STATUS 68*5113495bSYour Name target_if_ftm_cmd_send(struct wlan_objmgr_pdev *pdev, 69*5113495bSYour Name uint8_t *buf, uint32_t len, uint8_t pdev_id); 70*5113495bSYour Name #endif /* _TARGET_IF_FTM_H_ */ 71