mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-30 19:51:31 -04:00
qcacmn: Implement api for interop issues ap
Implement the interface to transfer the info between host driver and firmware about the ap which has interop issues with the DUT. It is detected by firmware and forwarded to user sapce for persistent storage. User space configs these APs to firmware when the DUT starts up next time. CRs-Fixed: 2425197 Change-Id: I3857d2a605baa2673af333a7a0412f1690b59769
This commit is contained in:
parent
d7196d8dd4
commit
5ea0a91a89
10 changed files with 265 additions and 0 deletions
48
wmi/inc/wmi_unified_interop_issues_ap_api.h
Normal file
48
wmi/inc/wmi_unified_interop_issues_ap_api.h
Normal file
|
|
@ -0,0 +1,48 @@
|
|||
/*
|
||||
* Copyright (c) 2019 The Linux Foundation. All rights reserved.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for
|
||||
* any purpose with or without fee is hereby granted, provided that the
|
||||
* above copyright notice and this permission notice appear in all
|
||||
* copies.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
|
||||
* WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
|
||||
* WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
|
||||
* AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
|
||||
* DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
|
||||
* PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
|
||||
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
* PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
/**
|
||||
* DOC: Implement API's specific to interop issues ap component.
|
||||
*/
|
||||
|
||||
#ifndef _WMI_UNIFIED_INTEROP_ISSUES_AP_API_H_
|
||||
#define _WMI_UNIFIED_INTEROP_ISSUES_AP_API_H_
|
||||
|
||||
#include <wmi_unified_param.h>
|
||||
#include <wlan_interop_issues_ap_public_structs.h>
|
||||
|
||||
/**
|
||||
* wmi_extract_interop_issues_ap_ev_param() - extract info from event
|
||||
* @wmi_handle: wmi handle
|
||||
* @evt_buf: event buffer
|
||||
* @param: pointer to interop issues ap event structure
|
||||
*
|
||||
* Return: QDF_STATUS_SUCCESS on success and QDF_STATUS_E_FAILURE for failure
|
||||
*/
|
||||
QDF_STATUS
|
||||
wmi_extract_interop_issues_ap_ev_param(wmi_unified_t wmi_handle, void *evt_buf,
|
||||
struct wlan_interop_issues_ap_event *param);
|
||||
/**
|
||||
* wmi_unified_set_rap_ps_cmd() - set interop issues ap for ps in fw
|
||||
* @wmi_handle: wmi handle
|
||||
* @rap: interop issues ap info
|
||||
*
|
||||
* Return: QDF_STATUS_SUCCESS on success and QDF_STATUS_E_FAILURE for failure
|
||||
*/
|
||||
QDF_STATUS wmi_unified_set_rap_ps_cmd(wmi_unified_t wmi_handle,
|
||||
struct wlan_interop_issues_ap_info *rap);
|
||||
#endif
|
||||
|
|
@ -4835,6 +4835,9 @@ typedef enum {
|
|||
wmi_vdev_get_mws_coex_tdm_state_eventid,
|
||||
wmi_vdev_get_mws_coex_idrx_state_eventid,
|
||||
wmi_vdev_get_mws_coex_antenna_sharing_state_eventid,
|
||||
#ifdef WLAN_FEATURE_INTEROP_ISSUES_AP
|
||||
wmi_pdev_interop_issues_ap_event_id,
|
||||
#endif
|
||||
wmi_events_max,
|
||||
} wmi_conv_event_id;
|
||||
|
||||
|
|
|
|||
|
|
@ -60,6 +60,10 @@
|
|||
#include "wmi_unified_atf_param.h"
|
||||
#endif
|
||||
|
||||
#ifdef WLAN_FEATURE_INTEROP_ISSUES_AP
|
||||
#include <wlan_interop_issues_ap_public_structs.h>
|
||||
#endif
|
||||
|
||||
#define WMI_UNIFIED_MAX_EVENT 0x100
|
||||
|
||||
#ifdef WMI_EXT_DBG
|
||||
|
|
@ -1487,6 +1491,15 @@ QDF_STATUS
|
|||
struct p2p_set_mac_filter_evt *param);
|
||||
#endif
|
||||
|
||||
#ifdef WLAN_FEATURE_INTEROP_ISSUES_AP
|
||||
QDF_STATUS
|
||||
(*extract_interop_issues_ap_ev_param)(wmi_unified_t wmi_handle, void *evt_buf,
|
||||
struct wlan_interop_issues_ap_event *param);
|
||||
QDF_STATUS
|
||||
(*send_set_rap_ps_cmd)(wmi_unified_t wmi_handle,
|
||||
struct wlan_interop_issues_ap_info *interop_issues_ap);
|
||||
#endif
|
||||
|
||||
QDF_STATUS (*extract_peer_sta_ps_statechange_ev)(wmi_unified_t wmi_handle,
|
||||
void *evt_buf, wmi_host_peer_sta_ps_statechange_event *ev);
|
||||
|
||||
|
|
@ -2166,6 +2179,15 @@ static inline void wmi_p2p_attach_tlv(struct wmi_unified *wmi_handle)
|
|||
}
|
||||
#endif
|
||||
|
||||
#ifdef WLAN_FEATURE_INTEROP_ISSUES_AP
|
||||
void wmi_interop_issues_ap_attach_tlv(wmi_unified_t wmi_handle);
|
||||
#else
|
||||
static inline void
|
||||
wmi_interop_issues_ap_attach_tlv(struct wmi_unified *wmi_handle)
|
||||
{
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef FEATURE_LFR_SUBNET_DETECTION
|
||||
void wmi_lfr_subnet_detection_attach_tlv(wmi_unified_t wmi_handle);
|
||||
#else
|
||||
|
|
|
|||
Loading…
Reference in a new issue