|
@@ -27,7 +27,6 @@
|
|
|
#include "cfg_ucfg_api.h"
|
|
|
#include "wlan_ipa_obj_mgmt_api.h"
|
|
|
|
|
|
-#ifdef IPA_OFFLOAD
|
|
|
static struct wlan_ipa_config *g_ipa_config;
|
|
|
static bool g_ipa_hw_support;
|
|
|
static bool g_ipa_pld_enable = true;
|
|
@@ -824,6 +823,34 @@ void ipa_fw_rejuvenate_send_msg(struct wlan_objmgr_pdev *pdev)
|
|
|
return wlan_ipa_fw_rejuvenate_send_msg(ipa_obj);
|
|
|
}
|
|
|
|
|
|
+#ifdef IPA_OPT_WIFI_DP
|
|
|
+uint32_t get_ipa_config(struct wlan_objmgr_psoc *psoc)
|
|
|
+{
|
|
|
+ uint32_t val = cfg_get(psoc, CFG_DP_IPA_OFFLOAD_CONFIG);
|
|
|
+
|
|
|
+ if (val == INTRL_MODE_DISABLE) {
|
|
|
+ val = 0;
|
|
|
+ } else {
|
|
|
+ if (val == IPA_OFFLOAD_CFG)
|
|
|
+ ipa_err("Invalid IPA Config 0x%x", val);
|
|
|
+ val = INTRL_MODE_ENABLE;
|
|
|
+ }
|
|
|
+ ipa_info("IPAConfig set as 0x%x", val);
|
|
|
+ return val;
|
|
|
+}
|
|
|
+#else
|
|
|
+uint32_t get_ipa_config(struct wlan_objmgr_psoc *psoc)
|
|
|
+{
|
|
|
+ uint32_t val = cfg_get(psoc, CFG_DP_IPA_OFFLOAD_CONFIG);
|
|
|
+
|
|
|
+ if (val & WLAN_IPA_OPT_WIFI_DP) {
|
|
|
+ val &= ~WLAN_IPA_OPT_WIFI_DP;
|
|
|
+ ipa_info("Resetting IPAConfig val to 0x%x", val);
|
|
|
+ }
|
|
|
+ return val;
|
|
|
+}
|
|
|
+#endif
|
|
|
+
|
|
|
void ipa_component_config_update(struct wlan_objmgr_psoc *psoc)
|
|
|
{
|
|
|
QDF_STATUS status;
|
|
@@ -835,8 +862,7 @@ void ipa_component_config_update(struct wlan_objmgr_psoc *psoc)
|
|
|
}
|
|
|
|
|
|
if (g_ipa_pld_enable) {
|
|
|
- g_ipa_config->ipa_config = cfg_get(psoc,
|
|
|
- CFG_DP_IPA_OFFLOAD_CONFIG);
|
|
|
+ g_ipa_config->ipa_config = get_ipa_config(psoc);
|
|
|
ipa_info("IPA ini configuration: 0x%x",
|
|
|
g_ipa_config->ipa_config);
|
|
|
} else {
|
|
@@ -921,4 +947,3 @@ bool ipa_is_wds_enabled(void)
|
|
|
{
|
|
|
return g_ipa_config ? g_ipa_config->ipa_wds : 0;
|
|
|
}
|
|
|
-#endif /* IPA_OFFLOAD */
|