Skip to content

Commit

Permalink
iwlwifi: by default, dump entire sram data portion
Browse files Browse the repository at this point in the history
For "sram" debugfs file, if user did not specify the offset and length,
dump the entire data portion of sram by default.
Data portion is 0x800000 - 0x80ffff, but the actual data size is known
to the driver from the ucode file.

Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
  • Loading branch information
Wey-Yi Guy authored and John W. Linville committed Nov 23, 2009
1 parent ac59257 commit 5ade1e4
Showing 1 changed file with 11 additions and 3 deletions.
14 changes: 11 additions & 3 deletions drivers/net/wireless/iwlwifi/iwl-debugfs.c
Original file line number Diff line number Diff line change
Expand Up @@ -235,13 +235,21 @@ static ssize_t iwl_dbgfs_sram_read(struct file *file,
struct iwl_priv *priv = (struct iwl_priv *)file->private_data;
size_t bufsz;

bufsz = 30 + priv->dbgfs->sram_len * sizeof(char) * 12;
/* default is to dump the entire data segment */
if (!priv->dbgfs->sram_offset && !priv->dbgfs->sram_len) {
priv->dbgfs->sram_offset = 0x800000;
if (priv->ucode_type == UCODE_INIT)
priv->dbgfs->sram_len = priv->ucode_init_data.len;
else
priv->dbgfs->sram_len = priv->ucode_data.len;
}
bufsz = 30 + priv->dbgfs->sram_len * sizeof(char) * 10;
buf = kmalloc(bufsz, GFP_KERNEL);
if (!buf)
return -ENOMEM;
pos += scnprintf(buf + pos, bufsz - pos, "sram_len: %d\n",
pos += scnprintf(buf + pos, bufsz - pos, "sram_len: 0x%x\n",
priv->dbgfs->sram_len);
pos += scnprintf(buf + pos, bufsz - pos, "sram_offset: %d\n",
pos += scnprintf(buf + pos, bufsz - pos, "sram_offset: 0x%x\n",
priv->dbgfs->sram_offset);
for (i = priv->dbgfs->sram_len; i > 0; i -= 4) {
val = iwl_read_targ_mem(priv, priv->dbgfs->sram_offset + \
Expand Down

0 comments on commit 5ade1e4

Please sign in to comment.