From: Michael Riesch <michael.riesch@wolfvision.net>
To: Sakari Ailus <sakari.ailus@linux.intel.com>,
Dave Stevenson <dave.stevenson@raspberrypi.com>
Cc: Mauro Carvalho Chehab <mchehab@kernel.org>,
Michael Riesch via B4 Relay
<devnull+michael.riesch.wolfvision.net@kernel.org>,
linux-kernel@vger.kernel.org,
Matthias Fend <Matthias.Fend@wolfvision.net>,
libcamera-devel@lists.libcamera.org, linux-media@vger.kernel.org
Subject: Re: [libcamera-devel] [PATCH RFC 1/4] media: v4l2-ctrls: add lens group status controls for zoom and focus
Date: Mon, 17 Apr 2023 14:38:20 +0200 [thread overview]
Message-ID: <ccae3994-3b1b-4050-ea34-98f97cf886e0@wolfvision.net> (raw)
In-Reply-To: <ZDbKU5kwcb7RGeCo@kekkonen.localdomain>
Hi Sakari,
On 4/12/23 17:12, Sakari Ailus wrote:
> Hi Dave, Michael,
>
> On Wed, Apr 12, 2023 at 02:55:56PM +0100, Dave Stevenson wrote:
>>>> If the ranges aren't updated, where should that out-of-range lens
>>>> movement leave the lens?
>>>
>>> This is up to the hardware controller, but I would guess it typically
>>> stops one step before disaster. Wherever that may be, the error
>>> condition and the current position can be read out via this new STATUS
>>> control.
>>>
>>> Does this sound good so far?
>>
>> Sounds reasonable, but I'm not the gatekeeper (that would be Sakari or
>> Laurent), and I'm just expressing my views based on the lenses I've
>> encountered.
>> All of my lenses have a single drive for focus, a single drive for
>> zoom, and where there are multiple elements they are all connected
>> mechanically. Your setup sounds far more complex and is likely to need
>> a more extensive driver, but it'd be nice to not unnecessarily
>> overcomplicate the interface.
>
> Could we also have a driver that uses these new controls?
If you are referring to the driver for our custom lens controller, then
I have to say that it is under development and simply not ready for
release yet. Also, the decision has not yet been made whether or not
this will be an open-source driver.
A different approach could be the adaptation of the vimc-lens driver,
which currently only supports FOCUS_ABSOLUTE. But this would raise
several implementation questions and at least for me this would be a
nontrivial task.
Is it required to have a driver for this interface (in the sense that
the patches cannot be accepted otherwise)?
> The controls themselves appear reasonable to me as well. I guess there are
> changes to be made based on the discussion?
I'd summarize that whether or not the status controls are compound
controls of the type V4L2_CTRL_TYPE_LENS_STATUS is the open question.
As a potential follow-up question I recently asked myself if the struct
v4l2_ctrl_lens_status should contain trailing reserved bytes for future
extension (no idea, though, what this could be).
Alternatively, we could come up with "V4L2_CID_FOCUS_CURRENT (integer)"
for the current position and "V4L2_CID_FOCUS_STATUS (bitmask)" (and add
further controls when they are needed. Here, we lose atomicity but maybe
this can be ignored. One could assume that all relevant controls are
read out with a single ioctl which provides at least some level of
atomicity.
Any comments and/or recommendations to this open question would be much
appreciated.
Other review comments will be incorporated in the next iteration of this
series as well, but they are quite straightforward.
Best regards,
Michael
next prev parent reply other threads:[~2023-04-17 12:38 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-04-06 14:31 [PATCH RFC 0/4] media: v4l2-ctrls: add controls for complex lens controller devices Michael Riesch via B4 Relay
2023-04-06 14:31 ` [PATCH RFC 1/4] media: v4l2-ctrls: add lens group status controls for zoom and focus Michael Riesch via B4 Relay
2023-04-06 15:16 ` [libcamera-devel] " Dave Stevenson
2023-04-11 17:33 ` Michael Riesch
2023-04-11 18:15 ` Dave Stevenson
2023-04-12 8:00 ` Michael Riesch
2023-04-12 11:50 ` Sakari Ailus
2023-04-12 11:57 ` Michael Riesch
2023-04-12 12:05 ` Sakari Ailus
2023-04-12 13:43 ` Michael Riesch
2023-04-12 14:39 ` Sakari Ailus
2023-04-12 14:57 ` Dave Stevenson
2023-04-12 13:55 ` Dave Stevenson
2023-04-12 15:12 ` Sakari Ailus
2023-04-17 12:38 ` Michael Riesch [this message]
2023-04-19 9:01 ` Sakari Ailus
2023-04-19 11:24 ` Michael Riesch
2023-04-19 12:49 ` Dave Stevenson
2023-04-24 19:57 ` Sakari Ailus
2023-04-17 8:29 ` Michael Riesch
2023-04-06 14:31 ` [PATCH RFC 2/4] media: v4l2-ctrls: add lens group speed " Michael Riesch via B4 Relay
2023-04-06 14:31 ` [PATCH RFC 3/4] media: v4l2-ctrls: add lens calibration controls Michael Riesch via B4 Relay
2023-04-06 14:31 ` [PATCH RFC 4/4] media: v4l2-ctrls: add controls for individual zoom lenses Michael Riesch via B4 Relay
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=ccae3994-3b1b-4050-ea34-98f97cf886e0@wolfvision.net \
--to=michael.riesch@wolfvision.net \
--cc=Matthias.Fend@wolfvision.net \
--cc=dave.stevenson@raspberrypi.com \
--cc=devnull+michael.riesch.wolfvision.net@kernel.org \
--cc=libcamera-devel@lists.libcamera.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=mchehab@kernel.org \
--cc=sakari.ailus@linux.intel.com \
/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