[libcamera-devel,v5,0/4] Introduce Lens class and apply auto focus on ipu3
mbox series

Message ID 20211126112903.3276056-1-hanlinchen@chromium.org
Headers show
Series
  • Introduce Lens class and apply auto focus on ipu3
Related show

Message

Hanlin Chen Nov. 26, 2021, 11:28 a.m. UTC
Hello,
The v5 series address further kind comments, moving model() into V4L2Subdevice
instead of an extra file, typos and styles.

Han-Lin Chen (4):
  ipa: ipu3: Extend ipu3 ipa interface for lens controls
  libcamera: add model() for retriving model name in V4L2Subdevice
  libcamera: camera_lens: Add a new class to model a camera lens
  ipu3: ipa: Allow IPA to apply controls to the lens device

 Documentation/index.rst                     |   1 +
 Documentation/lens_driver_requirements.rst  |  27 ++++
 Documentation/meson.build                   |   1 +
 include/libcamera/internal/camera_lens.h    |  48 +++++++
 include/libcamera/internal/meson.build      |   1 +
 include/libcamera/internal/v4l2_subdevice.h |   5 +
 include/libcamera/ipa/ipu3.mojom            |   2 +
 src/libcamera/camera_lens.cpp               | 142 ++++++++++++++++++++
 src/libcamera/camera_sensor.cpp             |  13 +-
 src/libcamera/meson.build                   |   1 +
 src/libcamera/pipeline/ipu3/cio2.cpp        |  29 ++++
 src/libcamera/pipeline/ipu3/cio2.h          |   3 +
 src/libcamera/pipeline/ipu3/ipu3.cpp        |  12 +-
 src/libcamera/v4l2_subdevice.cpp            |  40 ++++++
 14 files changed, 312 insertions(+), 13 deletions(-)
 create mode 100644 Documentation/lens_driver_requirements.rst
 create mode 100644 include/libcamera/internal/camera_lens.h
 create mode 100644 src/libcamera/camera_lens.cpp

Comments

Laurent Pinchart Nov. 30, 2021, 4:02 a.m. UTC | #1
Hi Han-lin,

On Fri, Nov 26, 2021 at 07:28:59PM +0800, Han-Lin Chen wrote:
> Hello,
> The v5 series address further kind comments, moving model() into V4L2Subdevice
> instead of an extra file, typos and styles.

I've reviewed the first three patches and have only small comments. For
4/4, should it be rebased on top of Dan's work adding support for
ancillary links ?

> Han-Lin Chen (4):
>   ipa: ipu3: Extend ipu3 ipa interface for lens controls
>   libcamera: add model() for retriving model name in V4L2Subdevice
>   libcamera: camera_lens: Add a new class to model a camera lens
>   ipu3: ipa: Allow IPA to apply controls to the lens device
> 
>  Documentation/index.rst                     |   1 +
>  Documentation/lens_driver_requirements.rst  |  27 ++++
>  Documentation/meson.build                   |   1 +
>  include/libcamera/internal/camera_lens.h    |  48 +++++++
>  include/libcamera/internal/meson.build      |   1 +
>  include/libcamera/internal/v4l2_subdevice.h |   5 +
>  include/libcamera/ipa/ipu3.mojom            |   2 +
>  src/libcamera/camera_lens.cpp               | 142 ++++++++++++++++++++
>  src/libcamera/camera_sensor.cpp             |  13 +-
>  src/libcamera/meson.build                   |   1 +
>  src/libcamera/pipeline/ipu3/cio2.cpp        |  29 ++++
>  src/libcamera/pipeline/ipu3/cio2.h          |   3 +
>  src/libcamera/pipeline/ipu3/ipu3.cpp        |  12 +-
>  src/libcamera/v4l2_subdevice.cpp            |  40 ++++++
>  14 files changed, 312 insertions(+), 13 deletions(-)
>  create mode 100644 Documentation/lens_driver_requirements.rst
>  create mode 100644 include/libcamera/internal/camera_lens.h
>  create mode 100644 src/libcamera/camera_lens.cpp
>
Hanlin Chen Nov. 30, 2021, 10:02 a.m. UTC | #2
Hi Laurent,

On Tue, Nov 30, 2021 at 12:03 PM Laurent Pinchart
<laurent.pinchart@ideasonboard.com> wrote:
>
> Hi Han-lin,
>
> On Fri, Nov 26, 2021 at 07:28:59PM +0800, Han-Lin Chen wrote:
> > Hello,
> > The v5 series address further kind comments, moving model() into V4L2Subdevice
> > instead of an extra file, typos and styles.
>
> I've reviewed the first three patches and have only small comments. For
> 4/4, should it be rebased on top of Dan's work adding support for
> ancillary links ?
Yes, I think I can remove the lens mapping part and it can be placed
between Daniel's patches 3/5 and 4/5:
[libcamera-devel,3/5] libcamera: ipu3-cio2: Discover VCMs through
ancillary links.
[libcamera-devel,4/5] ipa: ipu3: Send lens controls to pipeline handler
If Daniel doesn't mind cherry-pick it to that series.
>
> > Han-Lin Chen (4):
> >   ipa: ipu3: Extend ipu3 ipa interface for lens controls
> >   libcamera: add model() for retriving model name in V4L2Subdevice
> >   libcamera: camera_lens: Add a new class to model a camera lens
> >   ipu3: ipa: Allow IPA to apply controls to the lens device
> >
> >  Documentation/index.rst                     |   1 +
> >  Documentation/lens_driver_requirements.rst  |  27 ++++
> >  Documentation/meson.build                   |   1 +
> >  include/libcamera/internal/camera_lens.h    |  48 +++++++
> >  include/libcamera/internal/meson.build      |   1 +
> >  include/libcamera/internal/v4l2_subdevice.h |   5 +
> >  include/libcamera/ipa/ipu3.mojom            |   2 +
> >  src/libcamera/camera_lens.cpp               | 142 ++++++++++++++++++++
> >  src/libcamera/camera_sensor.cpp             |  13 +-
> >  src/libcamera/meson.build                   |   1 +
> >  src/libcamera/pipeline/ipu3/cio2.cpp        |  29 ++++
> >  src/libcamera/pipeline/ipu3/cio2.h          |   3 +
> >  src/libcamera/pipeline/ipu3/ipu3.cpp        |  12 +-
> >  src/libcamera/v4l2_subdevice.cpp            |  40 ++++++
> >  14 files changed, 312 insertions(+), 13 deletions(-)
> >  create mode 100644 Documentation/lens_driver_requirements.rst
> >  create mode 100644 include/libcamera/internal/camera_lens.h
> >  create mode 100644 src/libcamera/camera_lens.cpp
> >
>
> --
> Regards,
>
> Laurent Pinchart
Daniel Scally Nov. 30, 2021, 10:04 a.m. UTC | #3
Hello

On 30/11/2021 10:02, Hanlin Chen wrote:
> Hi Laurent,
>
> On Tue, Nov 30, 2021 at 12:03 PM Laurent Pinchart
> <laurent.pinchart@ideasonboard.com> wrote:
>> Hi Han-lin,
>>
>> On Fri, Nov 26, 2021 at 07:28:59PM +0800, Han-Lin Chen wrote:
>>> Hello,
>>> The v5 series address further kind comments, moving model() into V4L2Subdevice
>>> instead of an extra file, typos and styles.
>> I've reviewed the first three patches and have only small comments. For
>> 4/4, should it be rebased on top of Dan's work adding support for
>> ancillary links ?
> Yes, I think I can remove the lens mapping part and it can be placed
> between Daniel's patches 3/5 and 4/5:
> [libcamera-devel,3/5] libcamera: ipu3-cio2: Discover VCMs through
> ancillary links.
> [libcamera-devel,4/5] ipa: ipu3: Send lens controls to pipeline handler
> If Daniel doesn't mind cherry-pick it to that series.


No problem at all

>>> Han-Lin Chen (4):
>>>   ipa: ipu3: Extend ipu3 ipa interface for lens controls
>>>   libcamera: add model() for retriving model name in V4L2Subdevice
>>>   libcamera: camera_lens: Add a new class to model a camera lens
>>>   ipu3: ipa: Allow IPA to apply controls to the lens device
>>>
>>>  Documentation/index.rst                     |   1 +
>>>  Documentation/lens_driver_requirements.rst  |  27 ++++
>>>  Documentation/meson.build                   |   1 +
>>>  include/libcamera/internal/camera_lens.h    |  48 +++++++
>>>  include/libcamera/internal/meson.build      |   1 +
>>>  include/libcamera/internal/v4l2_subdevice.h |   5 +
>>>  include/libcamera/ipa/ipu3.mojom            |   2 +
>>>  src/libcamera/camera_lens.cpp               | 142 ++++++++++++++++++++
>>>  src/libcamera/camera_sensor.cpp             |  13 +-
>>>  src/libcamera/meson.build                   |   1 +
>>>  src/libcamera/pipeline/ipu3/cio2.cpp        |  29 ++++
>>>  src/libcamera/pipeline/ipu3/cio2.h          |   3 +
>>>  src/libcamera/pipeline/ipu3/ipu3.cpp        |  12 +-
>>>  src/libcamera/v4l2_subdevice.cpp            |  40 ++++++
>>>  14 files changed, 312 insertions(+), 13 deletions(-)
>>>  create mode 100644 Documentation/lens_driver_requirements.rst
>>>  create mode 100644 include/libcamera/internal/camera_lens.h
>>>  create mode 100644 src/libcamera/camera_lens.cpp
>>>
>> --
>> Regards,
>>
>> Laurent Pinchart