Commit 43da4e3e authored by Yangtao Li's avatar Yangtao Li Committed by Paul Burton

MIPS: r2-on-r6-emu: Change to use DEFINE_SHOW_ATTRIBUTE macro

Use DEFINE_SHOW_ATTRIBUTE macro to simplify the code.
Signed-off-by: default avatarYangtao Li <tiny.windzz@gmail.com>
Signed-off-by: default avatarPaul Burton <paul.burton@mips.com>
Patchwork: https://patchwork.linux-mips.org/patch/20991/
Cc: ralf@linux-mips.org
Cc: jhogan@kernel.org
Cc: linux-mips@linux-mips.org
Cc: linux-kernel@vger.kernel.org
parent b3a428b4
...@@ -2242,7 +2242,7 @@ int mipsr2_decoder(struct pt_regs *regs, u32 inst, unsigned long *fcr31) ...@@ -2242,7 +2242,7 @@ int mipsr2_decoder(struct pt_regs *regs, u32 inst, unsigned long *fcr31)
#ifdef CONFIG_DEBUG_FS #ifdef CONFIG_DEBUG_FS
static int mipsr2_stats_show(struct seq_file *s, void *unused) static int mipsr2_emul_show(struct seq_file *s, void *unused)
{ {
seq_printf(s, "Instruction\tTotal\tBDslot\n------------------------------\n"); seq_printf(s, "Instruction\tTotal\tBDslot\n------------------------------\n");
...@@ -2308,9 +2308,9 @@ static int mipsr2_stats_show(struct seq_file *s, void *unused) ...@@ -2308,9 +2308,9 @@ static int mipsr2_stats_show(struct seq_file *s, void *unused)
return 0; return 0;
} }
static int mipsr2_stats_clear_show(struct seq_file *s, void *unused) static int mipsr2_clear_show(struct seq_file *s, void *unused)
{ {
mipsr2_stats_show(s, unused); mipsr2_emul_show(s, unused);
__this_cpu_write((mipsr2emustats).movs, 0); __this_cpu_write((mipsr2emustats).movs, 0);
__this_cpu_write((mipsr2bdemustats).movs, 0); __this_cpu_write((mipsr2bdemustats).movs, 0);
...@@ -2353,30 +2353,8 @@ static int mipsr2_stats_clear_show(struct seq_file *s, void *unused) ...@@ -2353,30 +2353,8 @@ static int mipsr2_stats_clear_show(struct seq_file *s, void *unused)
return 0; return 0;
} }
static int mipsr2_stats_open(struct inode *inode, struct file *file) DEFINE_SHOW_ATTRIBUTE(mipsr2_emul);
{ DEFINE_SHOW_ATTRIBUTE(mipsr2_clear);
return single_open(file, mipsr2_stats_show, inode->i_private);
}
static int mipsr2_stats_clear_open(struct inode *inode, struct file *file)
{
return single_open(file, mipsr2_stats_clear_show, inode->i_private);
}
static const struct file_operations mipsr2_emul_fops = {
.open = mipsr2_stats_open,
.read = seq_read,
.llseek = seq_lseek,
.release = single_release,
};
static const struct file_operations mipsr2_clear_fops = {
.open = mipsr2_stats_clear_open,
.read = seq_read,
.llseek = seq_lseek,
.release = single_release,
};
static int __init mipsr2_init_debugfs(void) static int __init mipsr2_init_debugfs(void)
{ {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment