浏览代码

qcacld-3.0: Enable converged configuration component

Enable the converged configuration component in the Kbuild. Also, hook
into the cfg parse and release APIs.

Change-Id: Id0df669a34463e9f51bd5cc5bf2939fb1ac6228d
CRs-Fixed: 2258233
Dustin Brown 7 年之前
父节点
当前提交
84f46eae30
共有 3 个文件被更改,包括 44 次插入0 次删除
  1. 12 0
      Kbuild
  2. 23 0
      components/cfg/cfg_all.h
  3. 9 0
      core/hdd/src/wlan_hdd_main.c

+ 12 - 0
Kbuild

@@ -293,6 +293,16 @@ SAP_OBJS :=	$(SAP_SRC_DIR)/sap_api_link_cntl.o \
 		$(SAP_SRC_DIR)/sap_fsm.o \
 		$(SAP_SRC_DIR)/sap_module.o
 
+############ CFG ############
+CFG_REL_DIR := $(WLAN_COMMON_ROOT)/cfg
+CFG_DIR := $(WLAN_ROOT)/$(CFG_REL_DIR)
+CFG_INC := \
+	-I$(CFG_DIR)/inc \
+	-I$(CFG_DIR)/dispatcher/inc \
+	-I$(WLAN_ROOT)/components/cfg
+CFG_OBJS := \
+	$(CFG_REL_DIR)/src/cfg.o
+
 ############ DFS ############
 DFS_DIR :=     $(WLAN_COMMON_ROOT)/umac/dfs
 DFS_CORE_INC_DIR := $(DFS_DIR)/core/inc
@@ -1345,6 +1355,7 @@ INCS :=		$(HDD_INC) \
 		$(SYS_INC) \
 		$(QDF_INC) \
 		$(CDS_INC) \
+		$(CFG_INC) \
 		$(DFS_INC) \
 		$(TARGET_IF_INC) \
 		$(CLD_TARGET_IF_INC) \
@@ -1434,6 +1445,7 @@ OBJS :=		$(HDD_OBJS) \
 		$(SYS_OBJS) \
 		$(QDF_OBJS) \
 		$(CDS_OBJS) \
+		$(CFG_OBJS) \
 		$(FTM_OBJS)
 
 OBJS +=		$(WMA_OBJS) \

+ 23 - 0
components/cfg/cfg_all.h

@@ -0,0 +1,23 @@
+/*
+ * Copyright (c) 2018 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.
+ */
+
+#include "cfg_define.h"
+#include "cfg_converged.h"
+
+#define CFG_ALL \
+	CFG_CONVERGED_ALL

+ 9 - 0
core/hdd/src/wlan_hdd_main.c

@@ -24,6 +24,7 @@
  */
 
 /* Include Files */
+#include "cfg_ucfg_api.h"
 #include <wlan_hdd_includes.h>
 #include <cds_api.h>
 #include <cds_sched.h>
@@ -285,6 +286,7 @@ static const struct category_info cinfo[MAX_SUPPORTED_CATEGORY] = {
 	[QDF_MODULE_ID_GREEN_AP] = {QDF_TRACE_LEVEL_ALL},
 	[QDF_MODULE_ID_OCB] = {QDF_TRACE_LEVEL_ALL},
 	[QDF_MODULE_ID_IPA] = {QDF_TRACE_LEVEL_ALL},
+	[QDF_MODULE_ID_CONFIG] = {QDF_TRACE_LEVEL_ALL},
 };
 
 int limit_off_chan_tbl[HDD_MAX_AC][HDD_MAX_OFF_CHAN_ENTRIES] = {
@@ -6850,6 +6852,8 @@ static void hdd_context_destroy(struct hdd_context *hdd_ctx)
 	qdf_mem_free(hdd_ctx->config);
 	hdd_ctx->config = NULL;
 
+	cfg_release();
+
 	wiphy_free(hdd_ctx->wiphy);
 }
 
@@ -8919,6 +8923,11 @@ static struct hdd_context *hdd_context_create(struct device *dev)
 		goto err_free_config;
 	}
 
+	status = cfg_parse(WLAN_INI_FILE);
+	if (QDF_IS_STATUS_ERROR(status))
+		hdd_err("Failed to parse cfg %s; status:%d\n",
+			WLAN_INI_FILE, status);
+
 	ie_whitelist_attrs_init(hdd_ctx);
 
 	hdd_debug("setting timer multiplier: %u",