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

Paul Elder
2023-11-30T11:34:06Z

On Thu, Nov 30, 2023 at 10:54:46AM +0100, Alexander Stein wrote:
> Hi Paul,
>
> Am Donnerstag, 30. November 2023, 10:47:00 CET schrieb Paul Elder:
> > On Wed, Nov 29, 2023 at 08:05:42PM +0000, Kieran Bingham wrote:
> > > Quoting Paul Elder (2023-11-29 09:29:55)
> > >
> > > > Add register dump for the image stabilizer module to debugfs.
> > >
> > > Is the Image Stabilizer on all variants of the ISP?
> > >
> > > I.e. is it valid register space on the RK3399 implementation?
> >
> > Yes, it is.
>
> Is there some public documentation available how this ISP works? For RK3399 or
> i.MX8MP.

Not that I'm aware of. I've been told there's some leaked documentation
in the RK3288 (without registers), and another one for the RK3399 (with
registers)?

Paul

>
> >
> > > If so then:
> > > Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
> > >
> > > > Signed-off-by: Paul Elder <paul.elder@ideasonboard.com>
> > > > ---
> > > >
> > > > .../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),
> > >
> > > I expect so as you haven't added the register macros in this series so
> > > they must already be there ...
> >
> > Yep :)
> >
> >
> > Paul
> >
> > > > + { /* 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)
>
>
> --
> TQ-Systems GmbH | Mühlstraße 2, Gut Delling | 82229 Seefeld, Germany
> Amtsgericht München, HRB 105018
> Geschäftsführer: Detlef Schneider, Rüdiger Stahl, Stefan Schneider
> http://www.tq-group.com/
>
>