aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/intel/iwlwifi/mvm/debugfs.c
diff options
context:
space:
mode:
authorEmmanuel Grumbach <emmanuel.grumbach@intel.com>2015-10-26 10:14:06 -0400
committerEmmanuel Grumbach <emmanuel.grumbach@intel.com>2016-02-27 15:00:01 -0500
commit9e7dce28659531b2741939e5b6f438bca1422720 (patch)
tree2136f97debb86bad16664aa121baf0429aee0170 /drivers/net/wireless/intel/iwlwifi/mvm/debugfs.c
parentbb81bb68f472bb0f9afbb483259d91d4efd86bfb (diff)
iwlwifi: mvm: allow to limit the A-MSDU from debugfs
in order to be able to tune the size of the desired A-MSDU based on link condition, add a knob to modify the length of the A-MSDU. Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Diffstat (limited to 'drivers/net/wireless/intel/iwlwifi/mvm/debugfs.c')
-rw-r--r--drivers/net/wireless/intel/iwlwifi/mvm/debugfs.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/debugfs.c b/drivers/net/wireless/intel/iwlwifi/mvm/debugfs.c
index 54d0d7d2d0b1..56e6b0b8b9cc 100644
--- a/drivers/net/wireless/intel/iwlwifi/mvm/debugfs.c
+++ b/drivers/net/wireless/intel/iwlwifi/mvm/debugfs.c
@@ -64,6 +64,7 @@
64 * 64 *
65 *****************************************************************************/ 65 *****************************************************************************/
66#include <linux/vmalloc.h> 66#include <linux/vmalloc.h>
67#include <linux/ieee80211.h>
67 68
68#include "mvm.h" 69#include "mvm.h"
69#include "fw-dbg.h" 70#include "fw-dbg.h"
@@ -1080,6 +1081,22 @@ static ssize_t iwl_dbgfs_fw_dbg_collect_write(struct iwl_mvm *mvm,
1080 return count; 1081 return count;
1081} 1082}
1082 1083
1084static ssize_t iwl_dbgfs_max_amsdu_len_write(struct iwl_mvm *mvm,
1085 char *buf, size_t count,
1086 loff_t *ppos)
1087{
1088 unsigned int max_amsdu_len;
1089 int ret;
1090
1091 ret = kstrtouint(buf, 0, &max_amsdu_len);
1092
1093 if (max_amsdu_len > IEEE80211_MAX_MPDU_LEN_VHT_11454)
1094 return -EINVAL;
1095 mvm->max_amsdu_len = max_amsdu_len;
1096
1097 return count;
1098}
1099
1083#define ADD_TEXT(...) pos += scnprintf(buf + pos, bufsz - pos, __VA_ARGS__) 1100#define ADD_TEXT(...) pos += scnprintf(buf + pos, bufsz - pos, __VA_ARGS__)
1084#ifdef CONFIG_IWLWIFI_BCAST_FILTERING 1101#ifdef CONFIG_IWLWIFI_BCAST_FILTERING
1085static ssize_t iwl_dbgfs_bcast_filters_read(struct file *file, 1102static ssize_t iwl_dbgfs_bcast_filters_read(struct file *file,
@@ -1497,6 +1514,7 @@ MVM_DEBUGFS_READ_WRITE_FILE_OPS(d0i3_refs, 8);
1497MVM_DEBUGFS_READ_WRITE_FILE_OPS(fw_dbg_conf, 8); 1514MVM_DEBUGFS_READ_WRITE_FILE_OPS(fw_dbg_conf, 8);
1498MVM_DEBUGFS_WRITE_FILE_OPS(fw_dbg_collect, 64); 1515MVM_DEBUGFS_WRITE_FILE_OPS(fw_dbg_collect, 64);
1499MVM_DEBUGFS_WRITE_FILE_OPS(cont_recording, 8); 1516MVM_DEBUGFS_WRITE_FILE_OPS(cont_recording, 8);
1517MVM_DEBUGFS_WRITE_FILE_OPS(max_amsdu_len, 8);
1500MVM_DEBUGFS_WRITE_FILE_OPS(indirection_tbl, 1518MVM_DEBUGFS_WRITE_FILE_OPS(indirection_tbl,
1501 (IWL_RSS_INDIRECTION_TABLE_SIZE * 2)); 1519 (IWL_RSS_INDIRECTION_TABLE_SIZE * 2));
1502 1520
@@ -1541,6 +1559,7 @@ int iwl_mvm_dbgfs_register(struct iwl_mvm *mvm, struct dentry *dbgfs_dir)
1541 MVM_DEBUGFS_ADD_FILE(d0i3_refs, mvm->debugfs_dir, S_IRUSR | S_IWUSR); 1559 MVM_DEBUGFS_ADD_FILE(d0i3_refs, mvm->debugfs_dir, S_IRUSR | S_IWUSR);
1542 MVM_DEBUGFS_ADD_FILE(fw_dbg_conf, mvm->debugfs_dir, S_IRUSR | S_IWUSR); 1560 MVM_DEBUGFS_ADD_FILE(fw_dbg_conf, mvm->debugfs_dir, S_IRUSR | S_IWUSR);
1543 MVM_DEBUGFS_ADD_FILE(fw_dbg_collect, mvm->debugfs_dir, S_IWUSR); 1561 MVM_DEBUGFS_ADD_FILE(fw_dbg_collect, mvm->debugfs_dir, S_IWUSR);
1562 MVM_DEBUGFS_ADD_FILE(max_amsdu_len, mvm->debugfs_dir, S_IWUSR);
1544 MVM_DEBUGFS_ADD_FILE(send_echo_cmd, mvm->debugfs_dir, S_IWUSR); 1563 MVM_DEBUGFS_ADD_FILE(send_echo_cmd, mvm->debugfs_dir, S_IWUSR);
1545 MVM_DEBUGFS_ADD_FILE(cont_recording, mvm->debugfs_dir, S_IWUSR); 1564 MVM_DEBUGFS_ADD_FILE(cont_recording, mvm->debugfs_dir, S_IWUSR);
1546 MVM_DEBUGFS_ADD_FILE(indirection_tbl, mvm->debugfs_dir, S_IWUSR); 1565 MVM_DEBUGFS_ADD_FILE(indirection_tbl, mvm->debugfs_dir, S_IWUSR);