qcacld-3.0: Add hdd memory dump feature flag
Add config flag to enable / disable hdd memory dump feature
Change-Id: Id2994f72b595096459e65ef4da5381d6eb3b476b
CRs-Fixed: 2231695
diff --git a/Kbuild b/Kbuild
index ee5dbf1..df7524d 100644
--- a/Kbuild
+++ b/Kbuild
@@ -540,6 +540,9 @@
CONFIG_FEATURE_UNIT_TEST_SUSPEND := y
endif
+#Flag to enable hdd memory dump feature
+CONFIG_FEATURE_HDD_MEMDUMP_ENABLE := y
+
#Flag to enable/disable WLAN D0-WOW
ifeq ($(CONFIG_PCI_MSM), y)
ifeq ($(CONFIG_HIF_PCI), y)
@@ -590,7 +593,6 @@
$(HDD_SRC_DIR)/wlan_hdd_hostapd.o \
$(HDD_SRC_DIR)/wlan_hdd_ioctl.o \
$(HDD_SRC_DIR)/wlan_hdd_main.o \
- $(HDD_SRC_DIR)/wlan_hdd_memdump.o \
$(HDD_SRC_DIR)/wlan_hdd_object_manager.o \
$(HDD_SRC_DIR)/wlan_hdd_oemdata.o \
$(HDD_SRC_DIR)/wlan_hdd_p2p.o \
@@ -618,6 +620,10 @@
HDD_OBJS+= $(HDD_SRC_DIR)/wlan_hdd_ocb.o
endif
+ifeq ($(CONFIG_FEATURE_HDD_MEMDUMP_ENABLE), y)
+HDD_OBJS+= $(HDD_SRC_DIR)/wlan_hdd_memdump.o
+endif
+
ifeq ($(CONFIG_WLAN_FEATURE_FIPS), y)
HDD_OBJS+= $(HDD_SRC_DIR)/wlan_hdd_fips.o
endif
@@ -2022,6 +2028,7 @@
cppflags-$(CONFIG_WLAN_LOGGING_SOCK_SVC) += -DWLAN_LOGGING_SOCK_SVC_ENABLE
cppflags-$(CONFIG_WLAN_FEATURE_FILS) += -DWLAN_FEATURE_FILS_SK
cppflags-$(CONFIG_CP_STATS) += -DQCA_SUPPORT_CP_STATS
+cppflags-$(CONFIG_FEATURE_HDD_MEMDUMP_ENABLE) += -DWLAN_FEATURE_HDD_MEMDUMP_ENABLE
ifeq ($(CONFIG_CNSS), y)
ifeq ($(CONFIG_CNSS_SDIO), y)
diff --git a/core/hdd/inc/wlan_hdd_main.h b/core/hdd/inc/wlan_hdd_main.h
index 17488e4..7206955 100644
--- a/core/hdd/inc/wlan_hdd_main.h
+++ b/core/hdd/inc/wlan_hdd_main.h
@@ -3151,9 +3151,18 @@
*/
void hdd_component_psoc_disable(struct wlan_objmgr_psoc *psoc);
+#ifdef WLAN_FEATURE_HDD_MEMDUMP_ENABLE
int hdd_driver_memdump_init(void);
void hdd_driver_memdump_deinit(void);
-
+#else /* WLAN_FEATURE_HDD_MEMDUMP_ENABLE */
+static inline int hdd_driver_memdump_init(void)
+{
+ return 0;
+}
+static inline void hdd_driver_memdump_deinit(void)
+{
+}
+#endif /* WLAN_FEATURE_HDD_MEMDUMP_ENABLE */
/**
* hdd_is_cli_iface_up() - check if there is any cli iface up
* @hdd_ctx: HDD context
diff --git a/core/hdd/src/wlan_hdd_main.c b/core/hdd/src/wlan_hdd_main.c
index 1bb4f57..1cd1f08 100644
--- a/core/hdd/src/wlan_hdd_main.c
+++ b/core/hdd/src/wlan_hdd_main.c
@@ -10483,6 +10483,7 @@
}
+#ifdef WLAN_FEATURE_HDD_MEMDUMP_ENABLE
/**
* hdd_state_info_dump() - prints state information of hdd layer
* @buf: buffer pointer
@@ -10548,6 +10549,11 @@
{
qdf_register_debug_callback(QDF_MODULE_ID_HDD, &hdd_state_info_dump);
}
+#else /* WLAN_FEATURE_HDD_MEMDUMP_ENABLE */
+static void hdd_register_debug_callback(void)
+{
+}
+#endif /* WLAN_FEATURE_HDD_MEMDUMP_ENABLE */
/*
* wlan_init_bug_report_lock() - Initialize bug report lock
diff --git a/core/mac/src/pe/lim/lim_api.c b/core/mac/src/pe/lim/lim_api.c
index d59c9de..1262dfa 100644
--- a/core/mac/src/pe/lim/lim_api.c
+++ b/core/mac/src/pe/lim/lim_api.c
@@ -682,6 +682,7 @@
ucfg_scan_unregister_requester(pMac->psoc, pMac->lim.req_id);
} /*** end lim_cleanup() ***/
+#ifdef WLAN_FEATURE_HDD_MEMDUMP_ENABLE
/**
* lim_state_info_dump() - print state information of lim layer
* @buf: buffer pointer
@@ -736,7 +737,11 @@
{
qdf_register_debug_callback(QDF_MODULE_ID_PE, &lim_state_info_dump);
}
-
+#else /* WLAN_FEATURE_HDD_MEMDUMP_ENABLE */
+static void lim_register_debug_callback(void)
+{
+}
+#endif /* WLAN_FEATURE_HDD_MEMDUMP_ENABLE */
static void lim_nan_register_callbacks(tpAniSirGlobal mac_ctx)
{
struct nan_callbacks cb_obj = {0};
diff --git a/core/sme/src/common/sme_api.c b/core/sme/src/common/sme_api.c
index cc0dfa0..2bf204b 100644
--- a/core/sme/src/common/sme_api.c
+++ b/core/sme/src/common/sme_api.c
@@ -588,6 +588,7 @@
return status;
}
+#ifdef WLAN_FEATURE_HDD_MEMDUMP_ENABLE
/**
* sme_get_sessionid_from_activelist() - gets session id
* @mac: mac context
@@ -683,7 +684,11 @@
{
qdf_register_debug_callback(QDF_MODULE_ID_SME, &sme_state_info_dump);
}
-
+#else /* WLAN_FEATURE_HDD_MEMDUMP_ENABLE */
+static void sme_register_debug_callback(void)
+{
+}
+#endif /* WLAN_FEATURE_HDD_MEMDUMP_ENABLE */
/* Global APIs */
diff --git a/core/wma/src/wma_main.c b/core/wma/src/wma_main.c
index 8340e5a..c02d370 100644
--- a/core/wma/src/wma_main.c
+++ b/core/wma/src/wma_main.c
@@ -2056,6 +2056,7 @@
struct wma_version_info g_wmi_version_info;
+#ifdef WLAN_FEATURE_HDD_MEMDUMP_ENABLE
/**
* wma_state_info_dump() - prints state information of wma layer
* @buf: buffer pointer
@@ -2282,7 +2283,11 @@
{
qdf_register_debug_callback(QDF_MODULE_ID_WMA, &wma_state_info_dump);
}
-
+#else /* WLAN_FEATURE_HDD_MEMDUMP_ENABLE */
+static void wma_register_debug_callback(void)
+{
+}
+#endif /* WLAN_FEATURE_HDD_MEMDUMP_ENABLE */
/**
* wma_register_tx_ops_handler() - register tx_ops of southbound
* @tx_ops: tx_ops pointer in southbound