1 2 /* 3 * Copyright (c) 2019 The Linux Foundation. All rights reserved. 4 * 5 * Permission to use, copy, modify, and/or distribute this software for 6 * any purpose with or without fee is hereby granted, provided that the 7 * above copyright notice and this permission notice appear in all 8 * copies. 9 * 10 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL 11 * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED 12 * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE 13 * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL 14 * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR 15 * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER 16 * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR 17 * PERFORMANCE OF THIS SOFTWARE. 18 */ 19 20 /** 21 * DOC: target_if_psoc_timer_tx_ops.h 22 * 23 * This file provide declaration for APIs registered through lmac Tx Ops 24 */ 25 26 #ifndef __TARGET_IF_PSOC_TIMER_TX_OPS_H__ 27 #define __TARGET_IF_PSOC_TIMER_TX_OPS_H__ 28 29 /** 30 * target_if_psoc_vdev_rsp_timer_inuse() - API to check if the response timer 31 * for vdev is inuse 32 * @psoc: Psoc object 33 * @vdev_id: Vdev object id 34 * 35 * Return: QDF_STATUS_E_ALREADY in case the timer is inuse or QDF_STATUS_SUCCESS 36 */ 37 QDF_STATUS target_if_psoc_vdev_rsp_timer_inuse(struct wlan_objmgr_psoc *psoc, 38 uint8_t vdev_id); 39 40 /** 41 * target_if_flush_psoc_vdev_timers() - API to flush target_if response timers 42 * for vdev 43 * @psoc: pointer to psoc object 44 * 45 * This API is used to flush target_if response timer. This API used while 46 * wlan driver shutdown. 47 * 48 * Return: none 49 */ 50 void target_if_flush_psoc_vdev_timers(struct wlan_objmgr_psoc *psoc); 51 52 /** 53 * target_if_psoc_vdev_rsp_timer_init() - API to initialize response timers for 54 * vdev from psoc 55 * @psoc: pointer to psoc object 56 * @vdev_id: vdev id for which response timer to be retrieved 57 * 58 * This API is used to initialize vdev response timer for vdev-id. 59 * 60 * Return: QDF_STATUS 61 */ 62 QDF_STATUS target_if_psoc_vdev_rsp_timer_init(struct wlan_objmgr_psoc *psoc, 63 uint8_t vdev_id); 64 65 /** 66 * target_if_psoc_vdev_rsp_timer_deinit() - API to de-initialize response timers 67 * for vdev from psoc 68 * @psoc: pointer to psoc object 69 * @vdev_id: vdev id for which response timer to be retrieved 70 * 71 * This API is used to de-initialize vdev response timer from vdev-id. 72 * 73 * Return: none 74 */ 75 void target_if_psoc_vdev_rsp_timer_deinit(struct wlan_objmgr_psoc *psoc, 76 uint8_t vdev_id); 77 78 /** 79 * target_if_vdev_mgr_rsp_timer_mod() - API to modify time of response timers 80 * for vdev from psoc 81 * @psoc: pointer to psoc object 82 * @vdev_id: vdev id for which response timer to be retrieved 83 * @mseconds: milli seconds 84 * 85 * This API is used to modify vdev response timer for vdev-id. 86 * 87 * Return: none 88 */ 89 QDF_STATUS target_if_vdev_mgr_rsp_timer_mod( 90 struct wlan_objmgr_psoc *psoc, 91 uint8_t vdev_id, 92 int mseconds); 93 94 #endif 95