media: rkisp1: debug: Add dump file in debugfs for MI main path registers
authorPaul Elder <paul.elder@ideasonboard.com>
Tue, 14 Jun 2022 19:10:33 +0000 (20:10 +0100)
committerMauro Carvalho Chehab <mchehab@kernel.org>
Sun, 17 Jul 2022 11:34:43 +0000 (12:34 +0100)
Add a register dump file in debugfs for some of the buffer-related
registers for the main path in MI (for the base address, the size, and
the offset). Also dump the corresponding shadow registers.

Signed-off-by: Paul Elder <paul.elder@ideasonboard.com>
Reviewed-by: Dafna Hirschfeld <dafna@fastmail.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
drivers/media/platform/rockchip/rkisp1/rkisp1-debug.c

index e76dc2b..71df3dc 100644 (file)
@@ -121,6 +121,24 @@ static int rkisp1_debug_dump_rsz_regs_show(struct seq_file *m, void *p)
 }
 DEFINE_SHOW_ATTRIBUTE(rkisp1_debug_dump_rsz_regs);
 
+static int rkisp1_debug_dump_mi_mp_show(struct seq_file *m, void *p)
+{
+       static const struct rkisp1_debug_register registers[] = {
+               RKISP1_DEBUG_REG(MI_MP_Y_BASE_AD_INIT),
+               RKISP1_DEBUG_REG(MI_MP_Y_BASE_AD_INIT2),
+               RKISP1_DEBUG_REG(MI_MP_Y_BASE_AD_SHD),
+               RKISP1_DEBUG_REG(MI_MP_Y_SIZE_INIT),
+               RKISP1_DEBUG_REG(MI_MP_Y_SIZE_INIT),
+               RKISP1_DEBUG_REG(MI_MP_Y_SIZE_SHD),
+               RKISP1_DEBUG_REG(MI_MP_Y_OFFS_CNT_SHD),
+               { /* Sentinel */ },
+       };
+       struct rkisp1_device *rkisp1 = m->private;
+
+       return rkisp1_debug_dump_regs(rkisp1, m, 0, registers);
+}
+DEFINE_SHOW_ATTRIBUTE(rkisp1_debug_dump_mi_mp);
+
 #define RKISP1_DEBUG_DATA_COUNT_BINS   32
 #define RKISP1_DEBUG_DATA_COUNT_STEP   (4096 / RKISP1_DEBUG_DATA_COUNT_BINS)
 
@@ -214,6 +232,9 @@ void rkisp1_debug_init(struct rkisp1_device *rkisp1)
        debugfs_create_file("srsz", 0444, regs_dir,
                            &rkisp1->resizer_devs[RKISP1_SELFPATH],
                            &rkisp1_debug_dump_rsz_regs_fops);
+
+       debugfs_create_file("mi_mp", 0444, regs_dir, rkisp1,
+                           &rkisp1_debug_dump_mi_mp_fops);
 }
 
 void rkisp1_debug_cleanup(struct rkisp1_device *rkisp1)