[PATCH-RESEND] ath10k: add log level configuration for fw_dbglog
Kalle Valo
kvalo at qca.qualcomm.com
Thu Jan 29 04:40:18 PST 2015
SenthilKumar Jegadeesan <sjegadee at qti.qualcomm.com> writes:
> Introduce optional log level configuration for
> existing debugfs fw_dbglog.
>
> It allow users to configure desired log level
> for firmware debugs.
>
> To configure log level as WARN
>
> echo 0xffffffff 2 > /sys/kernel/debug/ieee80211/phy0/ath10k/fw_dbglog
>
> Loglevel Value
> VERBOSE 0
> INFO 1
> WARN 2
> ERR 3
>
> Signed-off-by: SenthilKumar Jegadeesan <sjegadee at qti.qualcomm.com>
I did cosmetic changes to the log in the pending branch.
> @@ -1331,19 +1331,30 @@ static ssize_t ath10k_write_fw_dbglog(struct file *file,
> size_t count, loff_t *ppos)
> {
> struct ath10k *ar = file->private_data;
> - unsigned long mask;
> int ret;
> + char buf[64];
> + unsigned int log_level, mask;
>
> - ret = kstrtoul_from_user(user_buf, count, 0, &mask);
> - if (ret)
> - return ret;
> + simple_write_to_buffer(buf, sizeof(buf) - 1, ppos, user_buf, count);
> +
> + /* make sure that buf is null terminated */
> + buf[sizeof(buf) - 1] = 0;
> +
> + ret = sscanf(buf, "%x %u", &mask, &log_level);
> +
> + if (!ret)
> + return -EINVAL;
>
> mutex_lock(&ar->conf_mutex);
>
> ar->debug.fw_dbglog_mask = mask;
> + ar->debug.fw_dbglog_level = (ret == 1) ? ATH10K_DBGLOG_LEVEL_WARN :
> + log_level;
And I simplified this a bit, please review. Full patch in pending
branch.
--- a/drivers/net/wireless/ath/ath10k/debug.c
+++ b/drivers/net/wireless/ath/ath10k/debug.c
@@ -1345,12 +1345,14 @@ static ssize_t ath10k_write_fw_dbglog(struct file *file,
if (!ret)
return -EINVAL;
+ if (ret == 1)
+ /* default if user did not specify */
+ log_level = ATH10K_DBGLOG_LEVEL_WARN;
+
mutex_lock(&ar->conf_mutex);
ar->debug.fw_dbglog_mask = mask;
- ar->debug.fw_dbglog_level = (ret == 1) ? ATH10K_DBGLOG_LEVEL_WARN :
- log_level;
-
+ ar->debug.fw_dbglog_level = log_level;
if (ar->state == ATH10K_STATE_ON) {
ret = ath10k_wmi_dbglog_cfg(ar, ar->debug.fw_dbglog_mask,
--
Kalle Valo
More information about the ath10k
mailing list