Hi Paul, Thank you for the patch. On Wed, Jun 15, 2022 at 04:10:33AM +0900, Paul Elder wrote: > Add a register dump file in debugfs for some of the buffer-related > registers in MI, for the base address, the size, and the offset. Also > dump the appropriate shadow registers. > > Signed-off-by: Paul Elder <paul.elder@xxxxxxxxxxxxxxxx> > --- > .../platform/rockchip/rkisp1/rkisp1-debug.c | 21 +++++++++++++++++++ > 1 file changed, 21 insertions(+) > > diff --git a/drivers/media/platform/rockchip/rkisp1/rkisp1-debug.c b/drivers/media/platform/rockchip/rkisp1/rkisp1-debug.c > index e76dc2b164b6..1a59c00fabdd 100644 > --- a/drivers/media/platform/rockchip/rkisp1/rkisp1-debug.c > +++ b/drivers/media/platform/rockchip/rkisp1/rkisp1-debug.c > @@ -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_y_offs_cnt_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_y_offs_cnt); > + > #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_y_bufs", 0444, regs_dir, rkisp1, > + &rkisp1_debug_dump_mi_mp_y_offs_cnt_fops); That's a very specialized file. I wonder if we should call it just "mi_mp" if it needs to be extended later with other memory interface registers for the main path. Or maybe even just "mi", to cover the self path too ? The latter may be a tad too generic. What do you think ? > } > > void rkisp1_debug_cleanup(struct rkisp1_device *rkisp1) -- Regards, Laurent Pinchart