qcacmn: Spectral changes for target_if
Use new structures to get target_type and revision Change-Id: Ic7cb70711b9c747159440638877a6d8c7bd46d92 CRs-Fixed: 2177109
此提交包含在:
@@ -25,6 +25,7 @@
|
||||
#include <target_if_spectral.h>
|
||||
#include <wlan_lmac_if_def.h>
|
||||
#include <wlan_osif_priv.h>
|
||||
#include <init_deinit_ucfg.h>
|
||||
#include <reg_services_public_struct.h>
|
||||
#ifdef CONFIG_WIN
|
||||
#include <wlan_mlme_dispatcher.h>
|
||||
@@ -120,7 +121,7 @@ target_if_send_vdev_spectral_configure_cmd(struct target_if_spectral *spectral,
|
||||
sparam.chn_mask = param->ss_chn_mask;
|
||||
|
||||
return spectral->param_wmi_cmd_ops.wmi_spectral_configure_cmd_send(
|
||||
GET_WMI_HDL_FROM_PDEV(pdev), &sparam);
|
||||
GET_WMI_HDL_FROM_PDEV(pdev), &sparam);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -167,7 +168,7 @@ target_if_send_vdev_spectral_enable_cmd(struct target_if_spectral *spectral,
|
||||
param.enabled = is_spectral_enabled;
|
||||
|
||||
return spectral->param_wmi_cmd_ops.wmi_spectral_enable_cmd_send(
|
||||
GET_WMI_HDL_FROM_PDEV(pdev), ¶m);
|
||||
GET_WMI_HDL_FROM_PDEV(pdev), ¶m);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -1965,21 +1966,18 @@ target_if_pdev_spectral_init(struct wlan_objmgr_pdev *pdev)
|
||||
struct target_if_spectral_ops *p_sops = NULL;
|
||||
struct target_if_spectral *spectral = NULL;
|
||||
#ifdef CONFIG_WIN
|
||||
struct ol_ath_softc_net80211 *scn = NULL;
|
||||
uint32_t target_type;
|
||||
uint32_t target_revision;
|
||||
struct wlan_objmgr_psoc *psoc;
|
||||
struct wlan_lmac_if_target_tx_ops *tx_ops;
|
||||
#endif
|
||||
struct pdev_osif_priv *osif_priv = NULL;
|
||||
|
||||
osif_priv = wlan_pdev_get_ospriv(pdev);
|
||||
#ifdef CONFIG_WIN
|
||||
scn = (struct ol_ath_softc_net80211 *)osif_priv->legacy_osif_priv;
|
||||
if (!scn) {
|
||||
qdf_print("%s: scn is NULL!\n", __func__);
|
||||
if (!pdev) {
|
||||
qdf_print("SPECTRAL: pdev is NULL!\n");
|
||||
return NULL;
|
||||
}
|
||||
#endif
|
||||
spectral =
|
||||
(struct target_if_spectral *)
|
||||
qdf_mem_malloc(sizeof(struct target_if_spectral));
|
||||
spectral = (struct target_if_spectral *)qdf_mem_malloc(
|
||||
sizeof(struct target_if_spectral));
|
||||
if (!spectral) {
|
||||
qdf_print("SPECTRAL : Memory allocation failed\n");
|
||||
return spectral;
|
||||
@@ -1988,6 +1986,26 @@ target_if_pdev_spectral_init(struct wlan_objmgr_pdev *pdev)
|
||||
/* Store pdev in Spectral */
|
||||
spectral->pdev_obj = pdev;
|
||||
|
||||
#ifdef CONFIG_WIN
|
||||
psoc = wlan_pdev_get_psoc(pdev);
|
||||
|
||||
tx_ops = &psoc->soc_cb.tx_ops.target_tx_ops;
|
||||
|
||||
if (tx_ops->tgt_get_tgt_type) {
|
||||
target_type = tx_ops->tgt_get_tgt_type(psoc);
|
||||
} else {
|
||||
qdf_mem_free(spectral);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if (tx_ops->tgt_get_tgt_revision) {
|
||||
target_revision = tx_ops->tgt_get_tgt_revision(psoc);
|
||||
} else {
|
||||
qdf_mem_free(spectral);
|
||||
return NULL;
|
||||
}
|
||||
#endif
|
||||
|
||||
/* init the function ptr table */
|
||||
target_if_spectral_init_dummy_function_table(spectral);
|
||||
|
||||
@@ -2020,8 +2038,8 @@ target_if_pdev_spectral_init(struct wlan_objmgr_pdev *pdev)
|
||||
/* Set the default values for spectral parameters */
|
||||
target_if_spectral_init_param_defaults(spectral);
|
||||
#ifdef CONFIG_WIN
|
||||
if ((scn->soc->target_type == TARGET_TYPE_QCA8074) || (
|
||||
scn->soc->target_type == TARGET_TYPE_QCA6290)) {
|
||||
if ((target_type == TARGET_TYPE_QCA8074) || (
|
||||
target_type == TARGET_TYPE_QCA6290)) {
|
||||
spectral->spectral_gen = SPECTRAL_GEN3;
|
||||
spectral->hdr_sig_exp = SPECTRAL_PHYERR_SIGNATURE_GEN3;
|
||||
spectral->tag_sscan_summary_exp =
|
||||
@@ -2067,23 +2085,24 @@ target_if_pdev_spectral_init(struct wlan_objmgr_pdev *pdev)
|
||||
spectral->is_lb_edge_extrabins_format = false;
|
||||
spectral->is_rb_edge_extrabins_format = false;
|
||||
#ifdef CONFIG_WIN
|
||||
if (scn->soc->target_type == TARGET_TYPE_QCA9984 ||
|
||||
scn->soc->target_type == TARGET_TYPE_QCA9888) {
|
||||
|
||||
if (target_type == TARGET_TYPE_QCA9984 ||
|
||||
target_type == TARGET_TYPE_QCA9888) {
|
||||
spectral->is_160_format = true;
|
||||
spectral->is_lb_edge_extrabins_format = true;
|
||||
spectral->is_rb_edge_extrabins_format = true;
|
||||
} else if ((scn->soc->target_type == TARGET_TYPE_AR900B) &&
|
||||
(scn->soc->target_revision == AR900B_REV_2)) {
|
||||
} else if ((target_type == TARGET_TYPE_AR900B) &&
|
||||
(target_revision == AR900B_REV_2)) {
|
||||
spectral->is_rb_edge_extrabins_format = true;
|
||||
}
|
||||
|
||||
if (scn->soc->target_type == TARGET_TYPE_QCA9984 ||
|
||||
scn->soc->target_type == TARGET_TYPE_QCA9888)
|
||||
if (target_type == TARGET_TYPE_QCA9984 ||
|
||||
target_type == TARGET_TYPE_QCA9888)
|
||||
spectral->is_sec80_rssi_war_required = true;
|
||||
#else
|
||||
spectral->is_160_format = true;
|
||||
spectral->is_lb_edge_extrabins_format = true;
|
||||
spectral->is_rb_edge_extrabins_format = true;
|
||||
spectral->is_160_format = true;
|
||||
spectral->is_lb_edge_extrabins_format = true;
|
||||
spectral->is_rb_edge_extrabins_format = true;
|
||||
#endif
|
||||
}
|
||||
|
||||
|
新增問題並參考
封鎖使用者