greearb@xxxxxxxxxxxxxxx writes: > From: Ben Greear <greearb@xxxxxxxxxxxxxxx> > > Using debugfs. More convenient than module options > in some cases. > > Signed-off-by: Ben Greear <greearb@xxxxxxxxxxxxxxx> > --- > drivers/net/wireless/ath/ath10k/debug.c | 62 +++++++++++++++++++++++++++++++++ > 1 file changed, 62 insertions(+) > > diff --git a/drivers/net/wireless/ath/ath10k/debug.c b/drivers/net/wireless/ath/ath10k/debug.c > index e251155..d552a4a 100644 > --- a/drivers/net/wireless/ath/ath10k/debug.c > +++ b/drivers/net/wireless/ath/ath10k/debug.c > @@ -870,6 +870,65 @@ static const struct file_operations fops_reg_addr = { > .llseek = default_llseek, > }; > > +static ssize_t ath10k_read_debug_level(struct file *file, > + char __user *user_buf, > + size_t count, loff_t *ppos) > +{ > + int sz; > + const char buf[] = > + "To change debug level, set value adding up desired flags:\n" > + "PCI: 0x1\n" > + "WMI: 0x2\n" > + "HTC: 0x4\n" > + "HTT: 0x8\n" > + "MAC: 0x10\n" > + "BOOT: 0x20\n" > + "PCI-DUMP: 0x40\n" > + "HTT-DUMP: 0x80\n" > + "MGMT: 0x100\n" > + "DATA: 0x200\n" > + "BMI: 0x400\n" > + "REGULATORY: 0x800\n" > + "TESTMODE: 0x1000\n" > + "INFO-AS-DBG: 0x40000000\n" > + "FW: 0x80000000\n" > + "ALL: 0xFFFFFFFF\n"; > + char wbuf[sizeof(buf) + 60]; > + sz = snprintf(wbuf, sizeof(wbuf), "Current debug level: 0x%x\n\n%s", > + ath10k_debug_mask, buf); > + wbuf[sizeof(wbuf) - 1] = 0; > + > + return simple_read_from_buffer(user_buf, count, ppos, wbuf, sz); > +} > + > +/* Set logging level. > + */ > +static ssize_t ath10k_write_debug_level(struct file *file, > + const char __user *user_buf, > + size_t count, loff_t *ppos) > +{ > + struct ath10k *ar = file->private_data; > + int ret; > + unsigned long mask; > + > + ret = kstrtoul_from_user(user_buf, count, 0, &mask); > + if (ret) > + return ret; > + > + ath10k_warn(ar, "Setting debug-mask to: 0x%lx old: 0x%x\n", > + mask, ath10k_debug_mask); > + ath10k_debug_mask = mask; > + return count; > +} There are already sysfs files for module parameters which seems to work just fine for this case: # echo 0xffffffff > /sys/module/ath10k_core/parameters/debug_mask -- Kalle Valo