diff --git a/qdf/Kbuild b/qdf/Kbuild index ee89dd5c46..3d0b99e9e2 100644 --- a/qdf/Kbuild +++ b/qdf/Kbuild @@ -4,6 +4,11 @@ endif DEPTH := ../.. +HOST_CMN_CONVG_SRC := $(DEPTH)/cmn_dev +HOST_CMN_CONVG_NLINK := $(DEPTH)/cmn_dev/utils/nlink +HOST_CMN_CONVG_LOGGING := $(DEPTH)/cmn_dev/utils/logging +HOST_CMN_CONVG_PTT := $(DEPTH)/cmn_dev/utils/ptt + include $(obj)/$(DEPTH)/os/linux/Makefile-linux.common ifeq ($(ATH_SUPPORT_HTC),1) @@ -17,9 +22,31 @@ INCS += -I$(WLAN_TOP)/../../include INCS += -I$(WLAN_TOP)/cmn_dev/qdf/inc INCS += -I$(WLAN_TOP)/cmn_dev/qdf/linux/src +INCS += -I$(obj)/$(HOST_CMN_CONVG_PTT)/inc \ + -I$(obj)/$(HOST_CMN_CONVG_NLINK)/inc \ + -I$(obj)/$(HOST_CMN_CONVG_LOGGING)/inc \ + -I$(obj)/$(DEPTH)/cmn_dev/utils/host_diag_log/inc \ + -I$(obj)/$(DEPTH)/cmn_dev/utils/host_diag_log/src \ + -I$(obj)/$(DEPTH)/cmn_dev/utils/ptt/inc \ + -I$(obj)/$(DEPTH)/hal \ + -I$(obj)/$(DEPTH)/offload/wlan/txrx/include \ + -I$(obj)/$(DEPTH)/offload/wlan/ath_pktlog/include \ + -I$(obj)/$(DEPTH)/offload/wlan/include \ + -I$(obj)/$(DEPTH)/cmn_dev/umac/cmn_services/obj_mgr/inc \ + -I$(obj)/$(DEPTH)/cmn_dev/umac/cmn_services/inc \ + -I$(obj)/$(DEPTH)/cmn_dev/wmi/inc \ + -I$(obj)/$(DEPTH)/cmn_dev/umac/global_umac_dispatcher/lmac_if/inc \ + -I$(obj)/$(DEPTH)/cmn_dev/umac/cmn_services/mgmt_txrx/dispatcher/inc \ + -I$(obj)/$(DEPTH)/offload/hw/include \ + -I$(obj)/$(DEPTH)/umac/base + + obj-m += qdf.o EXTRA_CFLAGS+= $(INCS) $(COPTS) -Wno-unused-function +ifeq ($(LOGGING_UTILS_SUPPORT),1) +EXTRA_CFLAGS+= -DWLAN_LOGGING_SOCK_SVC_ENABLE=1 +endif ifeq ($(strip ${QCA_PARTNER_MAKE_F_SUPPORT}),1) MOD_CFLAGS = -D"KBUILD_STR(s)=\#s" -D"KBUILD_BASENAME=KBUILD_STR(qdf.mod)" -D"KBUILD_MODNAME=KBUILD_STR(qdf)" @@ -42,6 +69,11 @@ linux/src/qdf_trace.o #linux/src/qdf_net_ioctl.o #linux/src/qdf_net_wext.o +ifeq ($(LOGGING_UTILS_SUPPORT),1) +qdf-objs += \ +$(HOST_CMN_CONVG_NLINK)/src/wlan_nlink_srv.o \ +$(HOST_CMN_CONVG_LOGGING)/src/wlan_logging_sock_svc.o +endif ifeq ($(BUILD_ADF_NET_IOCTL),1) EXTRA_CFLAGS+= -DADF_NET_IOCTL_SUPPORT diff --git a/qdf/inc/qdf_trace.h b/qdf/inc/qdf_trace.h index 5c29a6fd02..d7a3fdabb9 100644 --- a/qdf/inc/qdf_trace.h +++ b/qdf/inc/qdf_trace.h @@ -694,4 +694,21 @@ QDF_STATUS qdf_print_set_node_flag(unsigned int idx, bool qdf_print_get_node_flag(unsigned int idx); #endif + +/** + * qdf_logging_init() - Initialize msg logging functionality + * + * + * Return : void + */ +void qdf_logging_init(void); + +/** + * qdf_logging_exit() - Cleanup msg logging functionality + * + * + * Return : void + */ +void qdf_logging_exit(void); + #endif /* __QDF_TRACE_H */ diff --git a/qdf/linux/src/qdf_module.c b/qdf/linux/src/qdf_module.c index ce4db058d1..a565d16040 100644 --- a/qdf/linux/src/qdf_module.c +++ b/qdf/linux/src/qdf_module.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2012-2016 The Linux Foundation. All rights reserved. + * Copyright (c) 2012-2017 The Linux Foundation. All rights reserved. * * Previously licensed under the ISC license by Qualcomm Atheros, Inc. * @@ -32,6 +32,7 @@ #include #include +#include MODULE_AUTHOR("Qualcomm Atheros Inc."); MODULE_DESCRIPTION("Qualcomm Atheros Device Framework Module"); @@ -49,6 +50,7 @@ MODULE_LICENSE("Dual BSD/GPL"); static int __init qdf_mod_init(void) { + qdf_logging_init(); qdf_perfmod_init(); return 0; } @@ -63,6 +65,7 @@ static void __exit qdf_mod_exit(void) { qdf_perfmod_exit(); + qdf_logging_exit(); } module_exit(qdf_mod_exit); diff --git a/qdf/linux/src/qdf_trace.c b/qdf/linux/src/qdf_trace.c index 28a4efdd46..e7c112f3b3 100644 --- a/qdf/linux/src/qdf_trace.c +++ b/qdf/linux/src/qdf_trace.c @@ -38,9 +38,9 @@ /* macro to map qdf trace levels into the bitmask */ #define QDF_TRACE_LEVEL_TO_MODULE_BITMASK(_level) ((1 << (_level))) +#include #ifdef CONFIG_MCL -#include #include "qdf_time.h" #include "qdf_mc_timer.h" @@ -2187,3 +2187,28 @@ void QDF_PRINT_INFO(unsigned int idx, QDF_MODULE_ID module, va_end(args); } EXPORT_SYMBOL(QDF_PRINT_INFO); + +#ifdef WLAN_LOGGING_SOCK_SVC_ENABLE +void qdf_logging_init(void) +{ + wlan_logging_sock_init_svc(); + wlan_logging_sock_activate_svc(1, 10); + nl_srv_init(NULL); +} + +void qdf_logging_exit(void) +{ + nl_srv_exit(); + wlan_logging_sock_deactivate_svc(); + wlan_logging_sock_deinit_svc(); +} +#else +void qdf_logging_init(void) +{ +} + +void qdf_logging_exit(void) +{ +} +#endif +