Re: [PATCH 2/3] media: rkisp1: debug: Add register dump for IS

From: Laurent Pinchart
Date: Thu Nov 30 2023 - 08:42:20 EST


Hi Paul,

Thank you for the patch.

On Wed, Nov 29, 2023 at 06:29:55PM +0900, Paul Elder wrote:
> Add register dump for the image stabilizer module to debugfs.
>
> Signed-off-by: Paul Elder <paul.elder@xxxxxxxxxxxxxxxx>
> ---
> .../platform/rockchip/rkisp1/rkisp1-debug.c | 18 ++++++++++++++++++
> 1 file changed, 18 insertions(+)
>
> diff --git a/drivers/media/platform/rockchip/rkisp1/rkisp1-debug.c b/drivers/media/platform/rockchip/rkisp1/rkisp1-debug.c
> index 71df3dc95e6f..f66b9754472e 100644
> --- a/drivers/media/platform/rockchip/rkisp1/rkisp1-debug.c
> +++ b/drivers/media/platform/rockchip/rkisp1/rkisp1-debug.c
> @@ -139,6 +139,21 @@ static int rkisp1_debug_dump_mi_mp_show(struct seq_file *m, void *p)
> }
> DEFINE_SHOW_ATTRIBUTE(rkisp1_debug_dump_mi_mp);
>
> +static int rkisp1_debug_dump_is_show(struct seq_file *m, void *p)
> +{
> + static const struct rkisp1_debug_register registers[] = {
> + RKISP1_DEBUG_SHD_REG(ISP_IS_H_OFFS),
> + RKISP1_DEBUG_SHD_REG(ISP_IS_V_OFFS),
> + RKISP1_DEBUG_SHD_REG(ISP_IS_H_SIZE),
> + RKISP1_DEBUG_SHD_REG(ISP_IS_V_SIZE),

As these are ISP registers, how about adding them to the list of ISP
registers ?

media: rkisp1: debug: Add register dump for IS

Add register dump for the ISP image stabilizer module to debugfs. This
helps debugging issues related to digital zoom.

Signed-off-by: Paul Elder <paul.elder@xxxxxxxxxxxxxxxx>
Signed-off-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx>

diff --git a/drivers/media/platform/rockchip/rkisp1/rkisp1-debug.c b/drivers/media/platform/rockchip/rkisp1/rkisp1-debug.c
index 71df3dc95e6f..d2fbed42164e 100644
--- a/drivers/media/platform/rockchip/rkisp1/rkisp1-debug.c
+++ b/drivers/media/platform/rockchip/rkisp1/rkisp1-debug.c
@@ -92,6 +92,10 @@ static int rkisp1_debug_dump_isp_regs_show(struct seq_file *m, void *p)
RKISP1_DEBUG_REG(ISP_FLAGS_SHD),
RKISP1_DEBUG_REG(ISP_RIS),
RKISP1_DEBUG_REG(ISP_ERR),
+ RKISP1_DEBUG_SHD_REG(ISP_IS_H_OFFS),
+ RKISP1_DEBUG_SHD_REG(ISP_IS_V_OFFS),
+ RKISP1_DEBUG_SHD_REG(ISP_IS_H_SIZE),
+ RKISP1_DEBUG_SHD_REG(ISP_IS_V_SIZE),
{ /* Sentinel */ },
};
struct rkisp1_device *rkisp1 = m->private;


> + { /* Sentinel */ },
> + };
> + struct rkisp1_device *rkisp1 = m->private;
> +
> + return rkisp1_debug_dump_regs(rkisp1, m, 0, registers);
> +}
> +DEFINE_SHOW_ATTRIBUTE(rkisp1_debug_dump_is);
> +
> #define RKISP1_DEBUG_DATA_COUNT_BINS 32
> #define RKISP1_DEBUG_DATA_COUNT_STEP (4096 / RKISP1_DEBUG_DATA_COUNT_BINS)
>
> @@ -235,6 +250,9 @@ void rkisp1_debug_init(struct rkisp1_device *rkisp1)
>
> debugfs_create_file("mi_mp", 0444, regs_dir, rkisp1,
> &rkisp1_debug_dump_mi_mp_fops);
> +
> + debugfs_create_file("is", 0444, regs_dir, rkisp1,
> + &rkisp1_debug_dump_is_fops);
> }
>
> void rkisp1_debug_cleanup(struct rkisp1_device *rkisp1)

--
Regards,

Laurent Pinchart