1 /* 2 * Copyright (c) 2019-2020 The Linux Foundation. All rights reserved. 3 * Copyright (c) 2022 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 * DOC: contains interop issues ap structure definitions 22 */ 23 24 #ifndef _WLAN_INTEROP_ISSUES_AP_STRUCTS_H_ 25 #define _WLAN_INTEROP_ISSUES_AP_STRUCTS_H_ 26 27 #ifdef WLAN_FEATURE_INTEROP_ISSUES_AP 28 #include <qdf_types.h> 29 #include <wlan_objmgr_psoc_obj.h> 30 31 #define MAX_INTEROP_ISSUES_AP_NUM 20 32 33 /** 34 * struct wlan_interop_issues_ap_info - interop issues ap info 35 * @detect_enable: the flag to enable detect issue ap 36 * @count: the number of interop issues ap 37 * @rap_items: interop issues ap items 38 */ 39 struct wlan_interop_issues_ap_info { 40 bool detect_enable; 41 uint32_t count; 42 struct qdf_mac_addr rap_items[MAX_INTEROP_ISSUES_AP_NUM]; 43 }; 44 45 /** 46 * struct wlan_interop_issues_ap_event - interop issues ap event 47 * @pdev: pdev object 48 * @psoc: psoc object 49 * @pdev_id: pdev id number 50 * @rap_addr: interop issues ap mac address 51 */ 52 struct wlan_interop_issues_ap_event { 53 struct wlan_objmgr_pdev *pdev; 54 struct wlan_objmgr_psoc *psoc; 55 uint32_t pdev_id; 56 struct qdf_mac_addr rap_addr; 57 }; 58 59 /** 60 * struct wlan_interop_issues_ap_callbacks - interop issues ap callbacks 61 * @os_if_interop_issues_ap_event_handler: OS IF callback for handling events 62 */ 63 struct wlan_interop_issues_ap_callbacks { 64 void (*os_if_interop_issues_ap_event_handler) 65 (struct wlan_interop_issues_ap_event *event); 66 }; 67 68 /** 69 * struct wlan_interop_issues_ap_tx_ops - structure of tx func pointers 70 * @set_rap_ps: handler for TX operations for the interop issues ap ps config 71 */ 72 struct wlan_interop_issues_ap_tx_ops { 73 QDF_STATUS (*set_rap_ps)(struct wlan_objmgr_psoc *psoc, 74 struct wlan_interop_issues_ap_info *rap); 75 }; 76 #endif 77 #endif /* _WLAN_INTEROP_ISSUES_AP_STRUCTS_H_ */ 78