Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9f781948 authored by Aditya Kodukula's avatar Aditya Kodukula Committed by snandini
Browse files

qcacmn: Add WMI command to enable wow mode logging

Add the WMI command WMI_DBGLOG_MOD_WOW_LOG_LEVEL to enable
debug logs while in wow mode.

Change-Id: Ia1902d989964a5e35f590a075a2de64a9f66d5b7
CRs-Fixed: 2810326
parent 90fba31d
Loading
Loading
Loading
Loading
+10 −0
Original line number Diff line number Diff line
@@ -1328,6 +1328,16 @@ int dbglog_set_mod_log_lvl(wmi_unified_t wmi_handle, uint32_t mod_log_lvl)
	return 0;
}

int dbglog_set_mod_wow_log_lvl(wmi_unified_t wmi_handle, uint32_t mod_log_lvl)
{
	/* set the global module level to log_lvl */
	wma_config_debug_module_cmd(wmi_handle,
				    WMI_DEBUG_LOG_PARAM_WOW_MOD_ENABLE_BITMAP,
				    mod_log_lvl, NULL, 0);

	return 0;
}

void
dbglog_set_vap_enable_bitmap(wmi_unified_t wmi_handle,
			     uint32_t vap_enable_bitmap)
+21 −2
Original line number Diff line number Diff line
/*
 * Copyright (c) 2011, 2014-2018 The Linux Foundation. All rights reserved.
 * Copyright (c) 2011, 2014-2020 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
@@ -102,7 +102,7 @@ int
dbglog_set_timestamp_resolution(wmi_unified_t wmi_handle,
				uint16_t tsr);

/** Enable reporting. If it is set to false then Traget wont deliver
/** Enable reporting. If it is set to false then Target wont deliver
 * any debug information
 */
int
@@ -129,6 +129,19 @@ dbglog_set_log_lvl(wmi_unified_t wmi_handle, DBGLOG_LOG_LVL log_lvl);
int
dbglog_set_mod_log_lvl(wmi_unified_t wmi_handle, uint32_t mod_id_lvl);

/*
 * set the debug log level for wow module
 *  mod_id_lvl : the format is more user friendly.
 *    module_id =  mod_id_lvl/10;
 *    log_level =  mod_id_lvl%10;
 * example : mod_id_lvl is 153. then module id is 15 and log level is 3.
 *           this format allows user to pass a sinlge value
 *           (which is the most convenient way for most of the OSs)
 *           to be passed from user to the driver.
 */
int
dbglog_set_mod_wow_log_lvl(wmi_unified_t wmi_handle, uint32_t mod_id_lvl);

/** Enable/Disable the logging for VAP */
int
dbglog_vap_log_enable(wmi_unified_t wmi_handle, uint16_t vap_id,
@@ -237,6 +250,12 @@ dbglog_set_mod_log_lvl(wmi_unified_t wmi_handle, uint32_t mod_id_lvl)
{
	return A_OK;
}

static inline int
dbglog_set_mod_wow_log_lvl(wmi_unified_t wmi_handle, uint32_t mod_id_lvl)
{
	return A_OK;
}
#endif /* FEATURE_FW_LOG_PARSING */

#ifdef __cplusplus
+3 −1
Original line number Diff line number Diff line
@@ -5133,6 +5133,7 @@ typedef enum {
 * @WMI_DBGLOG_MOD_LOG_LEVEL: Enable MODULE level debug
 * @WMI_DBGLOG_TYPE: set type of the debug output
 * @WMI_DBGLOG_REPORT_ENABLE: Enable Disable debug
 * @WMI_DBGLOG_MOD_WOW_LOG_LEVEL: set the WOW MODULE debug loglevel
 */
typedef enum {
	WMI_DBGLOG_LOG_LEVEL = 0x1,
@@ -5142,7 +5143,8 @@ typedef enum {
	WMI_DBGLOG_MODULE_DISABLE,
	WMI_DBGLOG_MOD_LOG_LEVEL,
	WMI_DBGLOG_TYPE,
	WMI_DBGLOG_REPORT_ENABLE
	WMI_DBGLOG_REPORT_ENABLE,
	WMI_DBGLOG_MOD_WOW_LOG_LEVEL
} WMI_DBG_PARAM;

/**