[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20230804150507.GI12951@pendragon.ideasonboard.com>
Date: Fri, 4 Aug 2023 18:05:07 +0300
From: Laurent Pinchart <laurent.pinchart@...asonboard.com>
To: Julien Stephan <jstephan@...libre.com>
Cc: AngeloGioacchino Del Regno
<angelogioacchino.delregno@...labora.com>,
Louis Kuo <louis.kuo@...iatek.com>,
Phi-bang Nguyen <pnguyen@...libre.com>,
Florian Sylvestre <fsylvestre@...libre.com>,
Alexander Gordeev <agordeev@...ux.ibm.com>,
Andy Hsieh <andy.hsieh@...iatek.com>,
Conor Dooley <conor+dt@...nel.org>,
daoyuan huang <daoyuan.huang@...iatek.com>,
devicetree@...r.kernel.org,
Hans Verkuil <hverkuil-cisco@...all.nl>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>,
linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org,
linux-mediatek@...ts.infradead.org, linux-media@...r.kernel.org,
Matthias Brugger <matthias.bgg@...il.com>,
Mauro Carvalho Chehab <mchehab@...nel.org>,
Moudy Ho <moudy.ho@...iatek.com>,
Rob Herring <robh+dt@...nel.org>,
Vasily Gorbik <gor@...ux.ibm.com>
Subject: Re: [PATCH v2 2/4] media: platform: mediatek: isp_30: add mediatek
ISP3.0 sensor interface
On Fri, Aug 04, 2023 at 04:50:05PM +0200, Julien Stephan wrote:
> On Mon, Jul 03, 2023 at 01:02:02PM +0200, AngeloGioacchino Del Regno wrote:
> > Il 30/06/23 12:01, Julien Stephan ha scritto:
> ..snip..
> > > +
> > > +static const struct mtk_seninf_format_info mtk_seninf_formats[] = {
> > > + {
> > > + .code = MEDIA_BUS_FMT_SBGGR8_1X8,
> > > + .flags = MTK_SENINF_FORMAT_BAYER,
> >
> > Each entry fits in one line.
> >
> > { .code = MEDIA_BUS_FMT_SBGGR8_1X8, .flags = MTK_SENINF_FORMAT_BAYER },
> >
>
> Hi Angelo,
>
> Actually not all entries fit in one line. The last 4 ones don't:
>
> { .code = MEDIA_BUS_FMT_SGRBG10_DPCM8_1X8, .flags = MTK_SENINF_FORMAT_DPCM | MTK_SENINF_FORMAT_INPUT_ONLY },
> which is 115 chars..
>
> so what is the best? put all in one line except the last 4 one? or keep
> them all as is?
I'd keep them all as is.
> > > + }, {
> ..snip..
> > > + udelay(1);
> > > + mtk_seninf_input_update(input, SENINF_CTRL, CSI2_SW_RST, 0);
> >
> > Is there any way to check if the CSI port did reset, or is it *guaranteed* to get
> > out of reset in a microsecond after deasserting SW_RST?
>
> I will double check this
>
> > > +}
> > > +
> ..snip..
> > > +
> > > + val = mtk_seninf_mux_read(mux, SENINF_MUX_CTRL);
> >
> > rst_mask = SENINF_MUX_CTRL_SENINF_IRQ_SW_RST | SENINF_MUX_CTRL_SENINF_MUX_SW_RST;
> >
> > writel(mux->base + SENINF_MUX_CTRL, val | rst_mask);
> > writel(mux->base + SENINFMUX_CTRL, val & ~rst_mask);
> >
> > that's better, right? :-)
With mtk_seninf_mux_write() instead of writel(), yes :-)
> right :)
>
> > > + mtk_seninf_mux_write(mux, SENINF_MUX_CTRL, val |
> > > + SENINF_MUX_CTRL_SENINF_IRQ_SW_RST |
> > > + SENINF_MUX_CTRL_SENINF_MUX_SW_RST);
--
Regards,
Laurent Pinchart
Powered by blists - more mailing lists