aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/iwlwifi/mvm/debugfs.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/wireless/iwlwifi/mvm/debugfs.c')
-rw-r--r--drivers/net/wireless/iwlwifi/mvm/debugfs.c79
1 files changed, 0 insertions, 79 deletions
diff --git a/drivers/net/wireless/iwlwifi/mvm/debugfs.c b/drivers/net/wireless/iwlwifi/mvm/debugfs.c
index 2a61baca5081..51b7116965ed 100644
--- a/drivers/net/wireless/iwlwifi/mvm/debugfs.c
+++ b/drivers/net/wireless/iwlwifi/mvm/debugfs.c
@@ -121,78 +121,6 @@ static ssize_t iwl_dbgfs_sta_drain_write(struct iwl_mvm *mvm, char *buf,
121 return ret; 121 return ret;
122} 122}
123 123
124static int iwl_dbgfs_fw_error_dump_open(struct inode *inode, struct file *file)
125{
126 struct iwl_mvm *mvm = inode->i_private;
127 int ret;
128
129 if (!mvm)
130 return -EINVAL;
131
132 mutex_lock(&mvm->mutex);
133 if (!mvm->fw_error_dump) {
134 ret = -ENODATA;
135 goto out;
136 }
137
138 file->private_data = mvm->fw_error_dump;
139 mvm->fw_error_dump = NULL;
140 ret = 0;
141
142out:
143 mutex_unlock(&mvm->mutex);
144 return ret;
145}
146
147static ssize_t iwl_dbgfs_fw_error_dump_read(struct file *file,
148 char __user *user_buf,
149 size_t count, loff_t *ppos)
150{
151 struct iwl_mvm_dump_ptrs *dump_ptrs = (void *)file->private_data;
152 ssize_t bytes_read = 0;
153 ssize_t bytes_read_trans = 0;
154
155 if (*ppos < dump_ptrs->op_mode_len)
156 bytes_read +=
157 simple_read_from_buffer(user_buf, count, ppos,
158 dump_ptrs->op_mode_ptr,
159 dump_ptrs->op_mode_len);
160
161 if (bytes_read < 0 || *ppos < dump_ptrs->op_mode_len)
162 return bytes_read;
163
164 if (dump_ptrs->trans_ptr) {
165 *ppos -= dump_ptrs->op_mode_len;
166 bytes_read_trans =
167 simple_read_from_buffer(user_buf + bytes_read,
168 count - bytes_read, ppos,
169 dump_ptrs->trans_ptr->data,
170 dump_ptrs->trans_ptr->len);
171 *ppos += dump_ptrs->op_mode_len;
172
173 if (bytes_read_trans >= 0)
174 bytes_read += bytes_read_trans;
175 else if (!bytes_read)
176 /* propagate the failure */
177 return bytes_read_trans;
178 }
179
180 return bytes_read;
181
182}
183
184static int iwl_dbgfs_fw_error_dump_release(struct inode *inode,
185 struct file *file)
186{
187 struct iwl_mvm_dump_ptrs *dump_ptrs = (void *)file->private_data;
188
189 vfree(dump_ptrs->op_mode_ptr);
190 vfree(dump_ptrs->trans_ptr);
191 kfree(dump_ptrs);
192
193 return 0;
194}
195
196static ssize_t iwl_dbgfs_sram_read(struct file *file, char __user *user_buf, 124static ssize_t iwl_dbgfs_sram_read(struct file *file, char __user *user_buf,
197 size_t count, loff_t *ppos) 125 size_t count, loff_t *ppos)
198{ 126{
@@ -1535,12 +1463,6 @@ MVM_DEBUGFS_WRITE_FILE_OPS(bt_force_ant, 10);
1535MVM_DEBUGFS_READ_WRITE_FILE_OPS(scan_ant_rxchain, 8); 1463MVM_DEBUGFS_READ_WRITE_FILE_OPS(scan_ant_rxchain, 8);
1536MVM_DEBUGFS_READ_WRITE_FILE_OPS(d0i3_refs, 8); 1464MVM_DEBUGFS_READ_WRITE_FILE_OPS(d0i3_refs, 8);
1537 1465
1538static const struct file_operations iwl_dbgfs_fw_error_dump_ops = {
1539 .open = iwl_dbgfs_fw_error_dump_open,
1540 .read = iwl_dbgfs_fw_error_dump_read,
1541 .release = iwl_dbgfs_fw_error_dump_release,
1542};
1543
1544#ifdef CONFIG_IWLWIFI_BCAST_FILTERING 1466#ifdef CONFIG_IWLWIFI_BCAST_FILTERING
1545MVM_DEBUGFS_READ_WRITE_FILE_OPS(bcast_filters, 256); 1467MVM_DEBUGFS_READ_WRITE_FILE_OPS(bcast_filters, 256);
1546MVM_DEBUGFS_READ_WRITE_FILE_OPS(bcast_filters_macs, 256); 1468MVM_DEBUGFS_READ_WRITE_FILE_OPS(bcast_filters_macs, 256);
@@ -1567,7 +1489,6 @@ int iwl_mvm_dbgfs_register(struct iwl_mvm *mvm, struct dentry *dbgfs_dir)
1567 S_IWUSR | S_IRUSR); 1489 S_IWUSR | S_IRUSR);
1568 MVM_DEBUGFS_ADD_FILE(nic_temp, dbgfs_dir, S_IRUSR); 1490 MVM_DEBUGFS_ADD_FILE(nic_temp, dbgfs_dir, S_IRUSR);
1569 MVM_DEBUGFS_ADD_FILE(stations, dbgfs_dir, S_IRUSR); 1491 MVM_DEBUGFS_ADD_FILE(stations, dbgfs_dir, S_IRUSR);
1570 MVM_DEBUGFS_ADD_FILE(fw_error_dump, dbgfs_dir, S_IRUSR);
1571 MVM_DEBUGFS_ADD_FILE(bt_notif, dbgfs_dir, S_IRUSR); 1492 MVM_DEBUGFS_ADD_FILE(bt_notif, dbgfs_dir, S_IRUSR);
1572 MVM_DEBUGFS_ADD_FILE(bt_cmd, dbgfs_dir, S_IRUSR); 1493 MVM_DEBUGFS_ADD_FILE(bt_cmd, dbgfs_dir, S_IRUSR);
1573 MVM_DEBUGFS_ADD_FILE(disable_power_off, mvm->debugfs_dir, 1494 MVM_DEBUGFS_ADD_FILE(disable_power_off, mvm->debugfs_dir,