media: remove bdisp_dbg_declare() and hva_dbg_declare()
Subsystems (2)
PATCH v2 1/1 media: remove bdisp_dbg_declare() and hva_dbg_declare()
We already have the DEFINE_SHOW_ATTRIBUTE.There is no need to define bdisp_dbg_declare and hva_dbg_declare,so remove them.Also use DEFINE_SHOW_ATTRIBUTE to simplify some code.
---
Changes in v2:
-delete fimc_is_debugfs_open
--- drivers/media/platform/exynos4-is/fimc-is.c | 16 ++------- .../media/platform/sti/bdisp/bdisp-debug.c | 34 ++++++------------ drivers/media/platform/sti/hva/hva-debugfs.c | 36 +++++++------------ 3 files changed, 26 insertions(+), 60 deletions(-)
drivers/media/platform/exynos4-is/fimc-is.c +3 -13
@@ -738,7 +738,7 @@ int fimc_is_hw_initialize(struct fimc_is *is)return 0 ; } -static int fimc_is_log_show (struct seq_file *s,void *data) +static int fimc_is_show (struct seq_file *s,void *data) {struct fimc_is *is = s->private;const u8 *buf = is->memory.vaddr +FIMC_IS_DEBUG_REGION_OFFSET ;
@@ -752,17 +752,7 @@ static int fimc_is_log_show(struct seq_file *s, void *data)return 0 ; } -static int fimc_is_debugfs_open (struct inode *inode,struct file *file) -{ -return single_open (file, fimc_is_log_show, inode->i_private); -} - -static const struct file_operations fimc_is_debugfs_fops = { - .open = fimc_is_debugfs_open, - .read = seq_read, - .llseek = seq_lseek, - .release = single_release, -}; +DEFINE_SHOW_ATTRIBUTE (fimc_is);static void fimc_is_debugfs_remove (struct fimc_is *is) {
@@ -777,7 +767,7 @@ static int fimc_is_debugfs_create(struct fimc_is *is) is->debugfs_entry =debugfs_create_dir ("fimc_is" ,NULL ); dentry =debugfs_create_file ("fw_log" ,S_IRUGO , is->debugfs_entry, - is, &fimc_is_debugfs_fops); + is, &fimc_is_fops);if (!dentry)fimc_is_debugfs_remove (is);
drivers/media/platform/sti/bdisp/bdisp-debug.c +11 -23
@@ -315,7 +315,7 @@ static void bdisp_dbg_dump_ivmx(struct seq_file *s,seq_puts (s,"Unknown conversion\n" ); } -static int bdisp_dbg_last_nodes (struct seq_file *s,void *data) +static int last_nodes_show (struct seq_file *s,void *data) {/* Not dumping all fields, focusing on significant ones */ struct bdisp_dev *bdisp = s->private;
@@ -388,7 +388,7 @@ static int bdisp_dbg_last_nodes(struct seq_file *s, void *data)return 0 ; } -static int bdisp_dbg_last_nodes_raw (struct seq_file *s,void *data) +static int last_nodes_raw_show (struct seq_file *s,void *data) {struct bdisp_dev *bdisp = s->private;struct bdisp_node *node;
@@ -437,7 +437,7 @@ static const char *bdisp_fmt_to_str(struct bdisp_frame frame) } } -static int bdisp_dbg_last_request (struct seq_file *s,void *data) +static int last_request_show (struct seq_file *s,void *data) {struct bdisp_dev *bdisp = s->private;struct bdisp_request *request = &bdisp->dbg.copy_request;
@@ -474,7 +474,7 @@ static int bdisp_dbg_last_request(struct seq_file *s, void *data)#define DUMP (reg) seq_printf(s, #reg " \t0x%08X\n", readl(bdisp->regs + reg)) -static int bdisp_dbg_regs (struct seq_file *s,void *data) +static int regs_show (struct seq_file *s,void *data) {struct bdisp_dev *bdisp = s->private;int ret;
@@ -582,7 +582,7 @@ static int bdisp_dbg_regs(struct seq_file *s, void *data)#define SECOND 1000000 -static int bdisp_dbg_perf (struct seq_file *s,void *data) +static int perf_show (struct seq_file *s,void *data) {struct bdisp_dev *bdisp = s->private;struct bdisp_request *request = &bdisp->dbg.copy_request;
@@ -627,27 +627,15 @@ static int bdisp_dbg_perf(struct seq_file *s, void *data)return 0 ; } -#define bdisp_dbg_declare (name) \ - static int bdisp_dbg_##name##_open(struct inode *i, struct file *f) \ - { \ - return single_open(f, bdisp_dbg_##name, i->i_private); \ - } \ - static const struct file_operations bdisp_dbg_##name##_fops = { \ - .open = bdisp_dbg_##name##_open, \ - .read = seq_read, \ - .llseek = seq_lseek, \ - .release = single_release, \ - } -#define bdisp_dbg_create_entry (name) \ debugfs_create_file(#name, S_IRUGO, bdisp->dbg.debugfs_entry, bdisp, \ - &bdisp_dbg_##name##_fops) + &name##_fops) -bdisp_dbg_declare (regs); -bdisp_dbg_declare (last_nodes); -bdisp_dbg_declare (last_nodes_raw); -bdisp_dbg_declare (last_request); -bdisp_dbg_declare (perf); +DEFINE_SHOW_ATTRIBUTE (regs); +DEFINE_SHOW_ATTRIBUTE (last_nodes); +DEFINE_SHOW_ATTRIBUTE (last_nodes_raw); +DEFINE_SHOW_ATTRIBUTE (last_request); +DEFINE_SHOW_ATTRIBUTE (perf);int bdisp_debugfs_create (struct bdisp_dev *bdisp) {
drivers/media/platform/sti/hva/hva-debugfs.c +12 -24
@@ -271,7 +271,7 @@ static void hva_dbg_perf_compute(struct hva_ctx *ctx)* device debug info */ -static int hva_dbg_device (struct seq_file *s,void *data) +static int device_show (struct seq_file *s,void *data) {struct hva_dev *hva = s->private;
@@ -281,7 +281,7 @@ static int hva_dbg_device(struct seq_file *s, void *data)return 0 ; } -static int hva_dbg_encoders (struct seq_file *s,void *data) +static int encoders_show (struct seq_file *s,void *data) {struct hva_dev *hva = s->private;unsigned int i =0 ;
@@ -299,7 +299,7 @@ static int hva_dbg_encoders(struct seq_file *s, void *data)return 0 ; } -static int hva_dbg_last (struct seq_file *s,void *data) +static int last_show (struct seq_file *s,void *data) {struct hva_dev *hva = s->private;struct hva_ctx *last_ctx = &hva->dbg.last_ctx;
@@ -316,7 +316,7 @@ static int hva_dbg_last(struct seq_file *s, void *data)return 0 ; } -static int hva_dbg_regs (struct seq_file *s,void *data) +static int regs_show (struct seq_file *s,void *data) {struct hva_dev *hva = s->private;
@@ -325,26 +325,14 @@ static int hva_dbg_regs(struct seq_file *s, void *data)return 0 ; } -#define hva_dbg_declare (name) \ - static int hva_dbg_##name##_open(struct inode *i, struct file *f) \ - { \ - return single_open(f, hva_dbg_##name, i->i_private); \ - } \ - static const struct file_operations hva_dbg_##name##_fops = { \ - .open = hva_dbg_##name##_open, \ - .read = seq_read, \ - .llseek = seq_lseek, \ - .release = single_release, \ - } -#define hva_dbg_create_entry (name) \ debugfs_create_file(#name, 0444, hva->dbg.debugfs_entry, hva, \ - &hva_dbg_##name##_fops) + &name##_fops) -hva_dbg_declare (device); -hva_dbg_declare (encoders); -hva_dbg_declare (last); -hva_dbg_declare (regs); +DEFINE_SHOW_ATTRIBUTE (device); +DEFINE_SHOW_ATTRIBUTE (encoders); +DEFINE_SHOW_ATTRIBUTE (last); +DEFINE_SHOW_ATTRIBUTE (regs);void hva_debugfs_create (struct hva_dev *hva) {
@@ -380,7 +368,7 @@ void hva_debugfs_remove(struct hva_dev *hva)* context (instance) debug info */ -static int hva_dbg_ctx (struct seq_file *s,void *data) +static int ctx_show (struct seq_file *s,void *data) {struct hva_ctx *ctx = s->private;
@@ -392,7 +380,7 @@ static int hva_dbg_ctx(struct seq_file *s, void *data)return 0 ; } -hva_dbg_declare (ctx); +DEFINE_SHOW_ATTRIBUTE (ctx);void hva_dbg_ctx_create (struct hva_ctx *ctx) {
@@ -407,7 +395,7 @@ void hva_dbg_ctx_create(struct hva_ctx *ctx) ctx->dbg.debugfs_entry =debugfs_create_file (name,0444 , hva->dbg.debugfs_entry, - ctx, &hva_dbg_ctx_fops); + ctx, &ctx_fops); }void hva_dbg_ctx_remove (struct hva_ctx *ctx)
Signature · 1 line
2.17.0
Hi,
The patch itself is OK, but the commit talks about bdisp & hva while the patch is also for fimc-is.
Could you please update the commit header & messages?
BR
Fabien
Quoted 237 lines · Yangtao Li
We already have the DEFINE_SHOW_ATTRIBUTE.There is no need to define
bdisp_dbg_declareand hva_dbg_declare,so remove them.Also useDEFINE_SHOW_ATTRIBUTEto simplify some code.Signed-off-by Yangtao Li <[email protected]>---
Changes in v2:(quoted diff) +0
-2-delete fimc_is_debugfs_open --- drivers/media/platform/exynos4-is/fimc-is.c | 16 ++------- .../media/platform/sti/bdisp/bdisp-debug.c | 34 ++++++------------ drivers/media/platform/sti/hva/hva-debugfs.c | 36 +++++++------------ 3 files changed, 26 insertions(+), 60 deletions(-)drivers/media/platform/exynos4-is/fimc-is.c +3
-13@@ -738,7 +738,7 @@ int fimc_is_hw_initialize(struct fimc_is *is)return 0 ; } -static int fimc_is_log_show (struct seq_file *s,void *data) +static int fimc_is_show (struct seq_file *s,void *data) {struct fimc_is *is = s->private;const u8 *buf = is->memory.vaddr +FIMC_IS_DEBUG_REGION_OFFSET ;@@ -752,17 +752,7 @@ static int fimc_is_log_show(struct seq_file *s, void *data)return 0 ; } -static int fimc_is_debugfs_open (struct inode *inode,struct file *file) -{ -return single_open (file, fimc_is_log_show, inode->i_private); -} - -static const struct file_operations fimc_is_debugfs_fops = { - .open = fimc_is_debugfs_open, - .read = seq_read, - .llseek = seq_lseek, - .release = single_release, -}; +DEFINE_SHOW_ATTRIBUTE (fimc_is);static void fimc_is_debugfs_remove (struct fimc_is *is) {@@ -777,7 +767,7 @@ static int fimc_is_debugfs_create(struct fimc_is *is) is->debugfs_entry =debugfs_create_dir ("fimc_is" ,NULL ); dentry =debugfs_create_file ("fw_log" ,S_IRUGO , is->debugfs_entry, - is, &fimc_is_debugfs_fops); + is, &fimc_is_fops);if (!dentry)fimc_is_debugfs_remove (is);drivers/media/platform/sti/bdisp/bdisp-debug.c +11
-23@@ -315,7 +315,7 @@ static void bdisp_dbg_dump_ivmx(struct seq_file *s,seq_puts (s,"Unknown conversion\n" ); } -static int bdisp_dbg_last_nodes (struct seq_file *s,void *data) +static int last_nodes_show (struct seq_file *s,void *data) {/* Not dumping all fields, focusing on significant ones */ struct bdisp_dev *bdisp = s->private;@@ -388,7 +388,7 @@ static int bdisp_dbg_last_nodes(struct seq_file *s, void *data)return 0 ; } -static int bdisp_dbg_last_nodes_raw (struct seq_file *s,void *data) +static int last_nodes_raw_show (struct seq_file *s,void *data) {struct bdisp_dev *bdisp = s->private;struct bdisp_node *node;@@ -437,7 +437,7 @@ static const char *bdisp_fmt_to_str(struct bdisp_frame frame) } } -static int bdisp_dbg_last_request (struct seq_file *s,void *data) +static int last_request_show (struct seq_file *s,void *data) {struct bdisp_dev *bdisp = s->private;struct bdisp_request *request = &bdisp->dbg.copy_request;@@ -474,7 +474,7 @@ static int bdisp_dbg_last_request(struct seq_file *s, void *data)#define DUMP (reg) seq_printf(s, #reg " \t0x%08X\n", readl(bdisp->regs + reg)) -static int bdisp_dbg_regs (struct seq_file *s,void *data) +static int regs_show (struct seq_file *s,void *data) {struct bdisp_dev *bdisp = s->private;int ret;@@ -582,7 +582,7 @@ static int bdisp_dbg_regs(struct seq_file *s, void *data)#define SECOND 1000000 -static int bdisp_dbg_perf (struct seq_file *s,void *data) +static int perf_show (struct seq_file *s,void *data) {struct bdisp_dev *bdisp = s->private;struct bdisp_request *request = &bdisp->dbg.copy_request;@@ -627,27 +627,15 @@ static int bdisp_dbg_perf(struct seq_file *s, void *data)return 0 ; } -#define bdisp_dbg_declare (name) \ - static int bdisp_dbg_##name##_open(struct inode *i, struct file *f) \ - { \ - return single_open(f, bdisp_dbg_##name, i->i_private); \ - } \ - static const struct file_operations bdisp_dbg_##name##_fops = { \ - .open = bdisp_dbg_##name##_open, \ - .read = seq_read, \ - .llseek = seq_lseek, \ - .release = single_release, \ - } -#define bdisp_dbg_create_entry (name) \ debugfs_create_file(#name, S_IRUGO, bdisp->dbg.debugfs_entry, bdisp, \ - &bdisp_dbg_##name##_fops) + &name##_fops) -bdisp_dbg_declare (regs); -bdisp_dbg_declare (last_nodes); -bdisp_dbg_declare (last_nodes_raw); -bdisp_dbg_declare (last_request); -bdisp_dbg_declare (perf); +DEFINE_SHOW_ATTRIBUTE (regs); +DEFINE_SHOW_ATTRIBUTE (last_nodes); +DEFINE_SHOW_ATTRIBUTE (last_nodes_raw); +DEFINE_SHOW_ATTRIBUTE (last_request); +DEFINE_SHOW_ATTRIBUTE (perf);int bdisp_debugfs_create (struct bdisp_dev *bdisp) {drivers/media/platform/sti/hva/hva-debugfs.c +12
-24@@ -271,7 +271,7 @@ static void hva_dbg_perf_compute(struct hva_ctx *ctx)* device debug info */ -static int hva_dbg_device (struct seq_file *s,void *data) +static int device_show (struct seq_file *s,void *data) {struct hva_dev *hva = s->private;@@ -281,7 +281,7 @@ static int hva_dbg_device(struct seq_file *s, void *data)return 0 ; } -static int hva_dbg_encoders (struct seq_file *s,void *data) +static int encoders_show (struct seq_file *s,void *data) {struct hva_dev *hva = s->private;unsigned int i =0 ;@@ -299,7 +299,7 @@ static int hva_dbg_encoders(struct seq_file *s, void *data)return 0 ; } -static int hva_dbg_last (struct seq_file *s,void *data) +static int last_show (struct seq_file *s,void *data) {struct hva_dev *hva = s->private;struct hva_ctx *last_ctx = &hva->dbg.last_ctx;@@ -316,7 +316,7 @@ static int hva_dbg_last(struct seq_file *s, void *data)return 0 ; } -static int hva_dbg_regs (struct seq_file *s,void *data) +static int regs_show (struct seq_file *s,void *data) {struct hva_dev *hva = s->private;@@ -325,26 +325,14 @@ static int hva_dbg_regs(struct seq_file *s, void *data)return 0 ; } -#define hva_dbg_declare (name) \ - static int hva_dbg_##name##_open(struct inode *i, struct file *f) \ - { \ - return single_open(f, hva_dbg_##name, i->i_private); \ - } \ - static const struct file_operations hva_dbg_##name##_fops = { \ - .open = hva_dbg_##name##_open, \ - .read = seq_read, \ - .llseek = seq_lseek, \ - .release = single_release, \ - } -#define hva_dbg_create_entry (name) \ debugfs_create_file(#name, 0444, hva->dbg.debugfs_entry, hva, \ - &hva_dbg_##name##_fops) + &name##_fops) -hva_dbg_declare (device); -hva_dbg_declare (encoders); -hva_dbg_declare (last); -hva_dbg_declare (regs); +DEFINE_SHOW_ATTRIBUTE (device); +DEFINE_SHOW_ATTRIBUTE (encoders); +DEFINE_SHOW_ATTRIBUTE (last); +DEFINE_SHOW_ATTRIBUTE (regs);void hva_debugfs_create (struct hva_dev *hva) {@@ -380,7 +368,7 @@ void hva_debugfs_remove(struct hva_dev *hva)* context (instance) debug info */ -static int hva_dbg_ctx (struct seq_file *s,void *data) +static int ctx_show (struct seq_file *s,void *data) {struct hva_ctx *ctx = s->private;@@ -392,7 +380,7 @@ static int hva_dbg_ctx(struct seq_file *s, void *data)return 0 ; } -hva_dbg_declare (ctx); +DEFINE_SHOW_ATTRIBUTE (ctx);void hva_dbg_ctx_create (struct hva_ctx *ctx) {@@ -407,7 +395,7 @@ void hva_dbg_ctx_create(struct hva_ctx *ctx) ctx->dbg.debugfs_entry =debugfs_create_file (name,0444 , hva->dbg.debugfs_entry, - ctx, &hva_dbg_ctx_fops); + ctx, &ctx_fops); }void hva_dbg_ctx_remove (struct hva_ctx *ctx)
Quoted 10 lines · Fabien DESSENNE
Hi,
The patch itself is OK, but the commit talks about bdisp & hva while the patch is also for fimc-is.
Could you please update the commit header & messages?BR
Fabien
This file has been split into two.
Thanks,
Yangtao
Quoted 239 lines · Yangtao Li
Quoted 237 lines
We already have the DEFINE_SHOW_ATTRIBUTE.There is no need to define
bdisp_dbg_declareand hva_dbg_declare,so remove them.Also useDEFINE_SHOW_ATTRIBUTEto simplify some code.Signed-off-by Yangtao Li <[email protected]>---
Changes in v2:(quoted diff) +0
-2-delete fimc_is_debugfs_open --- drivers/media/platform/exynos4-is/fimc-is.c | 16 ++------- .../media/platform/sti/bdisp/bdisp-debug.c | 34 ++++++------------ drivers/media/platform/sti/hva/hva-debugfs.c | 36 +++++++------------ 3 files changed, 26 insertions(+), 60 deletions(-)drivers/media/platform/exynos4-is/fimc-is.c +3
-13@@ -738,7 +738,7 @@ int fimc_is_hw_initialize(struct fimc_is *is)return 0 ; } -static int fimc_is_log_show (struct seq_file *s,void *data) +static int fimc_is_show (struct seq_file *s,void *data) {struct fimc_is *is = s->private;const u8 *buf = is->memory.vaddr +FIMC_IS_DEBUG_REGION_OFFSET ;@@ -752,17 +752,7 @@ static int fimc_is_log_show(struct seq_file *s, void *data)return 0 ; } -static int fimc_is_debugfs_open (struct inode *inode,struct file *file) -{ -return single_open (file, fimc_is_log_show, inode->i_private); -} - -static const struct file_operations fimc_is_debugfs_fops = { - .open = fimc_is_debugfs_open, - .read = seq_read, - .llseek = seq_lseek, - .release = single_release, -}; +DEFINE_SHOW_ATTRIBUTE (fimc_is);static void fimc_is_debugfs_remove (struct fimc_is *is) {@@ -777,7 +767,7 @@ static int fimc_is_debugfs_create(struct fimc_is *is) is->debugfs_entry =debugfs_create_dir ("fimc_is" ,NULL ); dentry =debugfs_create_file ("fw_log" ,S_IRUGO , is->debugfs_entry, - is, &fimc_is_debugfs_fops); + is, &fimc_is_fops);if (!dentry)fimc_is_debugfs_remove (is);drivers/media/platform/sti/bdisp/bdisp-debug.c +11
-23@@ -315,7 +315,7 @@ static void bdisp_dbg_dump_ivmx(struct seq_file *s,seq_puts (s,"Unknown conversion\n" ); } -static int bdisp_dbg_last_nodes (struct seq_file *s,void *data) +static int last_nodes_show (struct seq_file *s,void *data) {/* Not dumping all fields, focusing on significant ones */ struct bdisp_dev *bdisp = s->private;@@ -388,7 +388,7 @@ static int bdisp_dbg_last_nodes(struct seq_file *s, void *data)return 0 ; } -static int bdisp_dbg_last_nodes_raw (struct seq_file *s,void *data) +static int last_nodes_raw_show (struct seq_file *s,void *data) {struct bdisp_dev *bdisp = s->private;struct bdisp_node *node;@@ -437,7 +437,7 @@ static const char *bdisp_fmt_to_str(struct bdisp_frame frame) } } -static int bdisp_dbg_last_request (struct seq_file *s,void *data) +static int last_request_show (struct seq_file *s,void *data) {struct bdisp_dev *bdisp = s->private;struct bdisp_request *request = &bdisp->dbg.copy_request;@@ -474,7 +474,7 @@ static int bdisp_dbg_last_request(struct seq_file *s, void *data)#define DUMP (reg) seq_printf(s, #reg " \t0x%08X\n", readl(bdisp->regs + reg)) -static int bdisp_dbg_regs (struct seq_file *s,void *data) +static int regs_show (struct seq_file *s,void *data) {struct bdisp_dev *bdisp = s->private;int ret;@@ -582,7 +582,7 @@ static int bdisp_dbg_regs(struct seq_file *s, void *data)#define SECOND 1000000 -static int bdisp_dbg_perf (struct seq_file *s,void *data) +static int perf_show (struct seq_file *s,void *data) {struct bdisp_dev *bdisp = s->private;struct bdisp_request *request = &bdisp->dbg.copy_request;@@ -627,27 +627,15 @@ static int bdisp_dbg_perf(struct seq_file *s, void *data)return 0 ; } -#define bdisp_dbg_declare (name) \ - static int bdisp_dbg_##name##_open(struct inode *i, struct file *f) \ - { \ - return single_open(f, bdisp_dbg_##name, i->i_private); \ - } \ - static const struct file_operations bdisp_dbg_##name##_fops = { \ - .open = bdisp_dbg_##name##_open, \ - .read = seq_read, \ - .llseek = seq_lseek, \ - .release = single_release, \ - } -#define bdisp_dbg_create_entry (name) \ debugfs_create_file(#name, S_IRUGO, bdisp->dbg.debugfs_entry, bdisp, \ - &bdisp_dbg_##name##_fops) + &name##_fops) -bdisp_dbg_declare (regs); -bdisp_dbg_declare (last_nodes); -bdisp_dbg_declare (last_nodes_raw); -bdisp_dbg_declare (last_request); -bdisp_dbg_declare (perf); +DEFINE_SHOW_ATTRIBUTE (regs); +DEFINE_SHOW_ATTRIBUTE (last_nodes); +DEFINE_SHOW_ATTRIBUTE (last_nodes_raw); +DEFINE_SHOW_ATTRIBUTE (last_request); +DEFINE_SHOW_ATTRIBUTE (perf);int bdisp_debugfs_create (struct bdisp_dev *bdisp) {drivers/media/platform/sti/hva/hva-debugfs.c +12
-24@@ -271,7 +271,7 @@ static void hva_dbg_perf_compute(struct hva_ctx *ctx)* device debug info */ -static int hva_dbg_device (struct seq_file *s,void *data) +static int device_show (struct seq_file *s,void *data) {struct hva_dev *hva = s->private;@@ -281,7 +281,7 @@ static int hva_dbg_device(struct seq_file *s, void *data)return 0 ; } -static int hva_dbg_encoders (struct seq_file *s,void *data) +static int encoders_show (struct seq_file *s,void *data) {struct hva_dev *hva = s->private;unsigned int i =0 ;@@ -299,7 +299,7 @@ static int hva_dbg_encoders(struct seq_file *s, void *data)return 0 ; } -static int hva_dbg_last (struct seq_file *s,void *data) +static int last_show (struct seq_file *s,void *data) {struct hva_dev *hva = s->private;struct hva_ctx *last_ctx = &hva->dbg.last_ctx;@@ -316,7 +316,7 @@ static int hva_dbg_last(struct seq_file *s, void *data)return 0 ; } -static int hva_dbg_regs (struct seq_file *s,void *data) +static int regs_show (struct seq_file *s,void *data) {struct hva_dev *hva = s->private;@@ -325,26 +325,14 @@ static int hva_dbg_regs(struct seq_file *s, void *data)return 0 ; } -#define hva_dbg_declare (name) \ - static int hva_dbg_##name##_open(struct inode *i, struct file *f) \ - { \ - return single_open(f, hva_dbg_##name, i->i_private); \ - } \ - static const struct file_operations hva_dbg_##name##_fops = { \ - .open = hva_dbg_##name##_open, \ - .read = seq_read, \ - .llseek = seq_lseek, \ - .release = single_release, \ - } -#define hva_dbg_create_entry (name) \ debugfs_create_file(#name, 0444, hva->dbg.debugfs_entry, hva, \ - &hva_dbg_##name##_fops) + &name##_fops) -hva_dbg_declare (device); -hva_dbg_declare (encoders); -hva_dbg_declare (last); -hva_dbg_declare (regs); +DEFINE_SHOW_ATTRIBUTE (device); +DEFINE_SHOW_ATTRIBUTE (encoders); +DEFINE_SHOW_ATTRIBUTE (last); +DEFINE_SHOW_ATTRIBUTE (regs);void hva_debugfs_create (struct hva_dev *hva) {@@ -380,7 +368,7 @@ void hva_debugfs_remove(struct hva_dev *hva)* context (instance) debug info */ -static int hva_dbg_ctx (struct seq_file *s,void *data) +static int ctx_show (struct seq_file *s,void *data) {struct hva_ctx *ctx = s->private;@@ -392,7 +380,7 @@ static int hva_dbg_ctx(struct seq_file *s, void *data)return 0 ; } -hva_dbg_declare (ctx); +DEFINE_SHOW_ATTRIBUTE (ctx);void hva_dbg_ctx_create (struct hva_ctx *ctx) {@@ -407,7 +395,7 @@ void hva_dbg_ctx_create(struct hva_ctx *ctx) ctx->dbg.debugfs_entry =debugfs_create_file (name,0444 , hva->dbg.debugfs_entry, - ctx, &hva_dbg_ctx_fops); + ctx, &ctx_fops); }void hva_dbg_ctx_remove (struct hva_ctx *ctx)