From: Sakari Ailus <sakari.ailus@iki.fi>
To: Jacopo Mondi <jacopo.mondi@ideasonboard.com>,
Laurent Pinchart <laurent.pinchart@ideasonboard.com>,
Mauro Carvalho Chehab <mchehab@kernel.org>,
Rob Herring <robh+dt@kernel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
Conor Dooley <conor+dt@kernel.org>,
Kieran Bingham <kieran.bingham@ideasonboard.com>,
Rob Herring <robh@kernel.org>,
linux-media@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH v2 3/3] media: i2c: gc2145: Galaxy Core GC2145 sensor support
Date: Mon, 6 Nov 2023 10:48:01 +0000 [thread overview]
Message-ID: <ZUjEYYH9jgaAjGfd@valkosipuli.retiisi.eu> (raw)
In-Reply-To: <20231106095546.GA3071306@gnbcxd0016.gnb.st.com>
Hi Alain, Jacopo,
On Mon, Nov 06, 2023 at 10:55:46AM +0100, Alain Volmat wrote:
> Hi,
>
> On Tue, Oct 31, 2023 at 09:05:32AM +0100, Jacopo Mondi wrote:
> > Hi Alain
> >
> > On Mon, Oct 30, 2023 at 05:37:11PM +0100, Alain Volmat wrote:
> > > Hi Jacopo,
> > >
> > > On Mon, Oct 23, 2023 at 10:38:59AM +0200, Jacopo Mondi wrote:
> > > > Hi Alain
> > > >
> > > > On Wed, Oct 11, 2023 at 07:57:30PM +0200, Alain Volmat wrote:
> > > > > Addition of support for the Galaxy Core GC2145 XVGA sensor.
> > > > > The sensor supports both DVP and CSI-2 interfaces however for
> > > > > the time being only CSI-2 is implemented.
> > > > >
> > > > > Configurations is currently based on initialization scripts
> > > > > coming from Galaxy Core and for that purpose only 3 static
> > > > > resolutions are supported with static framerates.
> > > > > - 640x480 (30fps)
> > > > > - 1280x720 (30fps)
> > > > > - 1600x1200 (20fps)
> > > >
> > > > Anything blocking having a writable VBLANK ? This is a YUV sensor but
> > > > GC2145_REG_VBLANK seems to be writable. I don't want to push you to
> > > > more work that what you actually need, but configurable blankings (and
> > > > then frame durations) seems like an important feature ? (and if I
> > > > recall right you want to use this sensor with libcamera, which will
> > > > require blankings to be controllable (if the sensor supports any RAW
> > > > format)
> > >
> > > No, nothing prevents to write the VBLANK register. I just did some
> > > tests directly via rwmem into a running sensor and vertical blanking can
> > > be updated, allowing to tune the framerate.
> > >
> > > >
> > > > I don't see any RAW format being supported in this version. Is this
> > > > something you plan to do on top ?
> > >
> > > Yes, absolutely, it is possible to output RAW formats as well however
> > > this version of the driver doesn't support it yet. The plan is indeed
> > > to add it on top of this.
> > > Several things to be addressed on top of this serie:
> > > - RAW format
> > > - frame_interval vs H/V blank control. Is my understanding correct if
> > > I say that if a sensor has RAW format (even if it ALSO has YUV /
> > > RGB) then control is done via H/V blanking controls rather than
> > > frame_interval ?
> >
> > I'll reply here to this question that is asked in a few other places.
> >
> > I can only point you to the ov5640 driver, which is capable of both
> > YUV/RGB and RAW as this sensor is. The ov5640 driver supports both the
> > g/s/enum_frame_interval and has writable blankings. I guess it's more
> > for historical reasons, as when blankings have been made writable
> > users of the frame_interval API would have been displeased if that
> > interface went away.
> >
> > The resulting implementation is not nice, as changing vblank doesn't
> > update the framerate reported through g_frame_interval, and keeping
> > the two in sync is not trivial.
> >
> > I would suggest to go for writable blankings, and if you already plan
> > to remove frame_interval then not add it in first place so there won't
> > be displeased users.
> >
> > Sakari, Laurent, what's your opinion here ?
>
> Sakari, Laurent, do you have opinion regarding how to control the
> framerate on this sensor. It is a YUV sensor but which might also (not
> yet made available in this first serie) support RAW format.
> Should I expose the g_frame_interval / s_frame_interval or only blanking
> ctrls ?
As this is a new driver, I'm leaning towards implementing blanking controls
only.
--
Regards,
Sakari Ailus
prev parent reply other threads:[~2023-11-06 10:48 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-10-11 17:57 [PATCH v2 0/3] media: i2c: gc2145: GC2145 sensor support Alain Volmat
2023-10-11 17:57 ` [PATCH v2 1/3] dt-bindings: vendor-prefixes: Add prefix for GalaxyCore Inc Alain Volmat
2023-10-12 18:02 ` Krzysztof Kozlowski
2023-10-11 17:57 ` [PATCH v2 2/3] dt-bindings: media: i2c: add galaxycore,gc2145 dt-bindings Alain Volmat
2023-10-12 17:15 ` Conor Dooley
2023-11-01 13:23 ` Sakari Ailus
2023-11-06 16:50 ` Alain Volmat
2023-10-11 17:57 ` [PATCH v2 3/3] media: i2c: gc2145: Galaxy Core GC2145 sensor support Alain Volmat
2023-10-23 8:38 ` Jacopo Mondi
2023-10-30 16:37 ` Alain Volmat
2023-10-31 8:05 ` Jacopo Mondi
2023-11-06 9:55 ` Alain Volmat
2023-11-06 10:48 ` Sakari Ailus [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ZUjEYYH9jgaAjGfd@valkosipuli.retiisi.eu \
--to=sakari.ailus@iki.fi \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=jacopo.mondi@ideasonboard.com \
--cc=kieran.bingham@ideasonboard.com \
--cc=krzysztof.kozlowski+dt@linaro.org \
--cc=laurent.pinchart@ideasonboard.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=mchehab@kernel.org \
--cc=robh+dt@kernel.org \
--cc=robh@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox