1 /* 2 * Copyright (c) 2011-2014,2016-2017,2019,2021 The Linux Foundation. All rights reserved. 3 * Copyright (c) 2021, Qualcomm Innovation Center, Inc. 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 * @file ol_txrx_api.h 22 * @brief Definitions used in multiple external interfaces to the txrx SW. 23 */ 24 #ifndef _OL_TXRX_API__H_ 25 #define _OL_TXRX_API__H_ 26 27 #include "ol_txrx_htt_api.h" 28 29 /** 30 * @brief ADDBA negotiation status, used both during requests and confirmations 31 */ 32 enum ol_addba_status { 33 /* status: negotiation started or completed successfully */ 34 ol_addba_success, 35 36 /* reject: aggregation is not applicable - don't try again */ 37 ol_addba_reject, 38 39 /* busy: ADDBA negotiation couldn't be performed - try again later */ 40 ol_addba_busy, 41 }; 42 43 enum ol_sec_type { 44 ol_sec_type_none, 45 ol_sec_type_wep128, 46 ol_sec_type_wep104, 47 ol_sec_type_wep40, 48 ol_sec_type_tkip, 49 ol_sec_type_tkip_nomic, 50 ol_sec_type_aes_ccmp, 51 ol_sec_type_wapi, 52 53 /* keep this last! */ 54 ol_sec_type_types 55 }; 56 57 #ifdef WLAN_FEATURE_TSF_PLUS_SOCK_TS 58 typedef int (*tp_ol_timestamp_cb)(enum htt_tx_status status, 59 qdf_nbuf_t netbuf, uint64_t target_time); 60 61 /** 62 * ol_register_timestamp_callback() - set callbacks for timestamp tx msdu. 63 * @ol_tx_timestamp_cb: callback function for time stamp tx msdu 64 * 65 * This function register timestamp callback, the callback will 66 * be called when tx a msdu 67 * 68 * Return: nothing 69 */ 70 void ol_register_timestamp_callback(tp_ol_timestamp_cb ol_tx_timestamp_cb); 71 72 /** 73 * ol_deregister_timestamp_callback() - reset callbacks for timestamp 74 * tx msdu to NULL. 75 * 76 * This function reset the timestamp callbacks for tx 77 * 78 * Return: nothing 79 */ 80 void ol_deregister_timestamp_callback(void); 81 #endif 82 #endif /* _OL_TXRX_API__H_ */ 83