Daniel Scally and Kieran Bingham
f0bfb2f19e
libipa: Add CameraSensorHelper for OV2740
...
The datasheet for the OV2740 gives 0x80 as 1x gain, so real gain
is GainCode / 128.
Signed-off-by: Daniel Scally <djrscally@gmail.com >
Acked-by: Kieran Bingham <kieran.bingham@ideasonboard.com >
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com >
Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com >
2022-03-17 16:34:47 +00:00
Daniel Scally and Kieran Bingham
a42c00e01e
libcamera: Add OV2740 camera sensor properties
...
Add camera sensor property entries for the OmniVision 2740 camera
sensor.
Signed-off-by: Daniel Scally <djrscally@gmail.com >
Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com >
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com >
Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com >
2022-03-17 16:34:23 +00:00
Daniel Scally and Kieran Bingham
58faa4f360
ipa: ipu3: Send lens controls to pipeline handler
...
Pick up the focus value from the AF algorithm and send lens controls
along in the frame context.
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com >
Signed-off-by: Daniel Scally <djrscally@gmail.com >
Reviewed-by: Jean-Michel Hautbois <jeanmichel.hautbois@ideasonboard.com >
Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com >
2022-03-15 17:20:59 +00:00
Daniel Scally and Kieran Bingham
1aecc633e4
libcamera: ipu3: Pass lens controls to config info
...
When configuring the pipeline we want to share the controls for any
VCM device against the sensor too - pass them to the lensControls
member of configInfo
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com >
Signed-off-by: Daniel Scally <djrscally@gmail.com >
Reviewed-by: Jean-Michel Hautbois <jeanmichel.hautbois@ideasonboard.com >
Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com >
2022-03-15 17:20:59 +00:00
Daniel Scally and Kieran Bingham
8fc169da5f
libcamera: ipa: Rename ctrls_ member
...
Now that we have added lens controls, rename the existiing
member of the class to clarify that it relates to the sensor's
controls.
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com >
Signed-off-by: Daniel Scally <djrscally@gmail.com >
Reviewed-by: Jean-Michel Hautbois <jeanmichel.hautbois@ideasonboard.com >
Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com >
2022-03-15 17:20:59 +00:00
Daniel Scally and Kieran Bingham
5413e78893
libcamera: ipa: Add lens control member to ipu3 ipa interface
...
Add further members to the ipu3 ipa interface that will hold lens
controls passed in by configInfo
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com >
Signed-off-by: Daniel Scally <djrscally@gmail.com >
Reviewed-by: Jean-Michel Hautbois <jeanmichel.hautbois@ideasonboard.com >
Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com >
2022-03-15 17:20:59 +00:00
Daniel Scally and Kieran Bingham
931556c37c
libcamera: camera_lens: Add function to fetch subdev controls
...
Add a function to the CameraLens class to fetch the V4L2 controls
for its V4L2 subdev
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com >
Signed-off-by: Daniel Scally <djrscally@gmail.com >
Reviewed-by: Jean-Michel Hautbois <jeanmichel.hautbois@ideasonboard.com >
Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com >
2022-03-15 17:20:59 +00:00
Daniel Scally and Kieran Bingham
9c003a5321
libcamera: camera_sensor: Discover VCMs through ancillary links
...
Add a function to check for and initialise any VCMs linked to the
CameraSensor's entity by ancillary links. This should initialise
the lens_ member with the linked entity. Call the new function
during CameraSensor::init().
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com >
Signed-off-by: Daniel Scally <djrscally@gmail.com >
Reviewed-by: Jean-Michel Hautbois <jeanmichel.hautbois@ideasonboard.com >
Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com >
2022-03-15 17:20:59 +00:00
Daniel Scally and Kieran Bingham
2cde99032f
libcamera: media_device: Handle ancillary links in populateLinks()
...
The populateLinks() function can't currently handle ancillary links
which causes an error to be thrown in process() when the MediaObject
cannot be cast to a MediaPad.
Add explicit handling for the different link types, creating either
pad-2-pad links or else storing the pointer to the ancillary device
MediaEntity in the ancillaryEntities_ member of the primary.
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com >
Signed-off-by: Daniel Scally <djrscally@gmail.com >
Reviewed-by: Jean-Michel Hautbois <jeanmichel.hautbois@ideasonboard.com >
Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com >
2022-03-15 17:20:59 +00:00
Daniel Scally and Kieran Bingham
ccc28b8b30
include: linux: Add MEDIA_LNK_FL_ANCILLARY_LINK
...
Add the new media link type macro to the header so we can use it to
identify the new links. This isn't handled as a sync to the upstream
header because the macro is not yet upstream itself. The latest
series attempting to add it being found here:
https://lists.libcamera.org/pipermail/libcamera-devel/2022-March/029120.html
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com >
Signed-off-by: Daniel Scally <djrscally@gmail.com >
Reviewed-by: Jean-Michel Hautbois <jeanmichel.hautbois@ideasonboard.com >
Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com >
2022-03-15 17:20:59 +00:00
Daniel Scally and Kieran Bingham
9490c664b5
libcamera: Add members to MediaEntity to support ancillary entities
...
With kernel support for ancillary links, we can describe the
relationship between two devices represented individually as instances
of MediaEntity. As the only property of that relationship is its
existence, describe those relationships in libcamera simply as a
vector of MediaEntity pointers to the ancillary devices.
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com >
Signed-off-by: Daniel Scally <djrscally@gmail.com >
Reviewed-by: Jean-Michel Hautbois <jeanmichel.hautbois@ideasonboard.com >
Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com >
2022-03-15 17:20:59 +00:00
Daniel Scally and Laurent Pinchart
34eef24d0b
libcamera: Add OV8865 sensor properties
...
Add camera sensor properties for the OV8865 sensor. This is the world
facing camera on most MS Surface platforms.
Signed-off-by: Daniel Scally <djrscally@gmail.com >
Reviewed-by: Umang Jain <umang.jain@ideasonboard.com >
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com >
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com >
2021-07-25 02:43:45 +03:00
Daniel Scally and Laurent Pinchart
2c88a6dbc1
libipa: Add CameraSensorHelper for ov8865
...
Add a CameraSensorHelperOv8865 class. The gain coefficients are gleaned
from the datasheet; the lowest 7 bits are reported there as fractional
bits, so real gain is val/128.
Signed-off-by: Daniel Scally <djrscally@gmail.com >
Reviewed-by: Umang Jain <umang.jain@ideasonboard.com >
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com >
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com >
2021-07-25 01:52:48 +03:00