Laurent Pinchart [Mon, 12 Oct 2015 22:48:06 +0000 (01:48 +0300)]
Add support for static compilation
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Wed, 12 Jun 2013 14:46:25 +0000 (16:46 +0200)]
videoout: Add rotation support
Laurent Pinchart [Wed, 11 Nov 2015 12:12:21 +0000 (14:12 +0200)]
isp: stats: Fix signed vs. unsigned comparison warning
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Tue, 13 Oct 2015 00:52:49 +0000 (03:52 +0300)]
isp: v4l2: Fix capabilities parsing
When adding support for device_caps the kernel changed the userspace API
and started reporting both output and capture through the capabilities
field. Use the device_caps field instead to get the per-device-node
capabilities.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Tue, 23 Oct 2012 02:12:56 +0000 (04:12 +0200)]
isp: Support format conversion in scaler
Include the preview engine in the scaler pipeline if the requested input
format is not a YUV format.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Tue, 23 Oct 2012 02:09:28 +0000 (04:09 +0200)]
isp: Support allocating an output buffers pool for the viewfinder
The viewfinder is usually used with a display device that allocates
buffers. This led to the viewfinder API requiring the application to set
the output buffers pool.
For applications that don't have a buffers pool to give to the
viewfinder support allocating a dedicated pool and exporting it to the
application.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Tue, 23 Oct 2012 23:47:31 +0000 (01:47 +0200)]
isp: Add crop support for the viewfinder
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Tue, 23 Oct 2012 02:08:15 +0000 (04:08 +0200)]
isp: Support raw viewfinder formats
Capture at the CCDC output if the requested viewfinder format is not a
YUV format, and at the resizer output otherwise.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Thu, 15 Nov 2012 10:53:21 +0000 (11:53 +0100)]
videoout: Return a negative error code in vo_queue_buffer()
Most functions return 0 on success and a negative error code otherwise,
make vo_queue_buffer() conform with that.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Tue, 13 Nov 2012 14:45:34 +0000 (15:45 +0100)]
videoout: Use the output overlay buffer type
The omap_vout driver implements the output overlay API, use the
corresponding buffer type.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Wed, 14 Nov 2012 02:19:10 +0000 (03:19 +0100)]
media: Fix valgrind warnings
valgrind has no way to know that the kernel will fill links and pads
arrays passed to an ioctl through __user pointers. Allocate the arrays
with calloc() to make sure they get initialized. This also fixes the
potential integer overflow.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Wed, 14 Nov 2012 02:16:30 +0000 (03:16 +0100)]
events: Safeguard against event deletion in event callbacks
Events callback can call events_unwatch_fd(), resulting in the event
being deleted from the events list. Use list_for_each_entry_safe() to
walk the list properly, and make sure the event isn't accessed after
it's callback function returns.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Tue, 23 Oct 2012 02:50:52 +0000 (04:50 +0200)]
isp: Use the requested input format for M2M pipelines
Don't try to force the sensor format or the output format at the
pipeline input when using memory-to-memory pipelines.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Wed, 15 Aug 2012 09:48:40 +0000 (11:48 +0200)]
omap3isp: Scale instead of cropping when scaling on the sensor
When using sensor scaling the sensor was incorrectly configured to crop
the image to a lower size instead of scaling it. Cropping is applied
before scaling in the sensor, so the crop rectangle needs to be set to
the pipeline input size, not the sensor output size.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Thu, 5 Jul 2012 00:35:42 +0000 (02:35 +0200)]
live: Add snapshot and scaler support
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Thu, 5 Jul 2012 00:22:35 +0000 (02:22 +0200)]
isp: Add scaler API
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Thu, 5 Jul 2012 00:20:20 +0000 (02:20 +0200)]
isp: Protect against starting viewfinder and snapshot at the same time
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Thu, 5 Jul 2012 00:49:17 +0000 (02:49 +0200)]
live, snapshot: Split the viewfinder and snapshot API
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Wed, 4 Jul 2012 10:46:53 +0000 (12:46 +0200)]
isp: Split the viewfinder and snapshot API
Don't suspend and resume the viewfinder implicitly when taking a
snapshot, but let the application stop the viewfinder before taking the
snapshot, and restart it afterwards.
Applications are now responsible for keeping track of the viewfinder
output buffers state and pass of bitmask of output buffers indices to be
queued when starting the viewfinder.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Wed, 4 Jul 2012 14:02:19 +0000 (16:02 +0200)]
isp: Add support for memory-to-memory pipelines
Make building and trying format possible on a pipeline that starts with
a video node.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Wed, 4 Jul 2012 10:52:46 +0000 (12:52 +0200)]
isp: Remove scaler argument to omap3_isp_pipeline_try_format()
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Mon, 2 Jul 2012 23:31:46 +0000 (01:31 +0200)]
live: Add digital zoom support
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Mon, 2 Jul 2012 22:50:31 +0000 (00:50 +0200)]
live, snapshot: Add option to disable AEWB
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Mon, 2 Jul 2012 22:33:55 +0000 (00:33 +0200)]
isp: Add live zoom support
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Wed, 4 Jul 2012 14:43:41 +0000 (16:43 +0200)]
v4l2: Print the device name in error messages
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Wed, 4 Jul 2012 10:49:28 +0000 (12:49 +0200)]
v4l2-pool: Initialize buffer indexes when creating the pool
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Sat, 20 Oct 2012 18:49:07 +0000 (20:49 +0200)]
isp: Emulate global gain for sensors that only expose color gains
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Enric Balletbo i Serra [Wed, 17 Oct 2012 09:22:59 +0000 (11:22 +0200)]
live: Support 16bpp and 24bpp RGB frame buffer formats
Paint the frame buffer correctly and set the corresponding color key
value for 16bpp and 24bpp RGB formats.
Signed-off-by: Enric Balletbo i Serra <eballetbo@iseebcn.com>
[Extract the bpp value through the fbdev API, add support for 24bpp]
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Thu, 4 Oct 2012 22:07:31 +0000 (00:07 +0200)]
README: Document kernel headers installation process
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Thu, 21 Jun 2012 12:49:06 +0000 (14:49 +0200)]
sensor: Fix omap3_isp_sensor_get_exposure()
The function tried to set the control instead of getting it. Fix this.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Thu, 21 Jun 2012 12:40:10 +0000 (14:40 +0200)]
sensor: Support setting gains selectively
Setting a gain value to OMAP3_ISP_SENSOR_GAIN_KEEP will prevent that
gain from being set.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Thu, 21 Jun 2012 11:23:10 +0000 (13:23 +0200)]
videout: Add support for disabling chroma keying
And make vo_enable_colorkey() return 0 on success and a negative error
code otherwise.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Thu, 21 Jun 2012 11:11:14 +0000 (13:11 +0200)]
videoout: Fix coding style
Function calls should have no space before the opening bracket.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Tue, 1 May 2012 23:36:02 +0000 (01:36 +0200)]
stats: Don't mess up Bayer pattern when setting the AEWB rectangle
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Wed, 28 Mar 2012 12:39:18 +0000 (14:39 +0200)]
iq: Add manual saturation setting
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Mon, 19 Mar 2012 11:58:24 +0000 (12:58 +0100)]
snapshot: Add JPEG compression support
Specifying the -j flag results in captured images being saved in JPEG
format instead of raw YUYV. JPEG compression implies YUYV capture,
software demosaicing isn't supported.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Mon, 19 Mar 2012 13:50:14 +0000 (14:50 +0100)]
iq: Add ae-delay and ae-interval parameters
The ae-delay parameter selects the number of frames to skip at stream
startup before running the auto exposure algorithm. The ae-interval
selects the number of frames between AE runs. This can be used to delay
AE when the sensor needs one or more frames to apply exposure and/or
gain values.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Fri, 16 Mar 2012 18:15:01 +0000 (19:15 +0100)]
iq: Add statistics window size and position parameters
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Fri, 16 Mar 2012 14:48:30 +0000 (15:48 +0100)]
iq: Make the IQ parameters configurable
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Wed, 29 Feb 2012 21:23:39 +0000 (22:23 +0100)]
omap3isp: Enable statistics for snapshot capture
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Wed, 22 Feb 2012 22:57:55 +0000 (23:57 +0100)]
snapshot: Use AEWB algorithm
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Wed, 22 Feb 2012 22:57:55 +0000 (23:57 +0100)]
live: Use AEWB algorithm
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Sat, 11 Feb 2012 06:26:21 +0000 (07:26 +0100)]
Add naive AEWB algorithm
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Wed, 1 Feb 2012 14:01:45 +0000 (15:01 +0100)]
stats: Add support for the AEWB statistics engine
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Fri, 20 Apr 2012 09:48:45 +0000 (11:48 +0200)]
omap3isp: Add ISP crop support
If the sensor doesn't support cropping, crop the image on the first ISP
entity that supports cropping on its source pad.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Thu, 19 Apr 2012 17:08:11 +0000 (19:08 +0200)]
omap3isp: Add support for greyscale sensors
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Thu, 19 Apr 2012 17:05:01 +0000 (19:05 +0200)]
snapshot: YUV formats use *8_1X16 media bus codes
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Tue, 17 Apr 2012 14:31:31 +0000 (16:31 +0200)]
omap3isp: Unsupported subdev ioctls returned -EINVAL on older kernels
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Wed, 4 Apr 2012 13:36:02 +0000 (15:36 +0200)]
events: Stop dispatching events immediately when requested to stop
Otherwise events received but not yet dispatched are dispatched and can
call hangs in ioctls as the pipeline has likely been stopped.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Fri, 16 Mar 2012 18:13:46 +0000 (19:13 +0100)]
snapshot: Allow the skip parameter to be 0
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Wed, 29 Feb 2012 21:23:54 +0000 (22:23 +0100)]
snapshot: Support capturing multiple frames per snapshot
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Wed, 29 Feb 2012 21:40:51 +0000 (22:40 +0100)]
snapshot: Update to the multiple snapshot capture API
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Wed, 29 Feb 2012 21:17:31 +0000 (22:17 +0100)]
omap3isp: Support capture of multiple snapshots
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Wed, 29 Feb 2012 21:11:53 +0000 (22:11 +0100)]
events: Make the event loop reusable
Set the done flag to false before starting the loop in order to make it
possible for the caller to restart the loop.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Wed, 29 Feb 2012 11:21:03 +0000 (12:21 +0100)]
snapshot: Make number of snapshots configurable
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Wed, 29 Feb 2012 11:36:04 +0000 (12:36 +0100)]
snapshot: Make viewfinder optional
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Wed, 29 Feb 2012 11:20:32 +0000 (12:20 +0100)]
omap3isp: Make viewfinder optional
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Tue, 28 Feb 2012 14:40:19 +0000 (15:40 +0100)]
snapshot: Add -s/--size argument to specify snapshot size
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Tue, 28 Feb 2012 14:40:19 +0000 (15:40 +0100)]
snapshot: Add -c/--crop argument to specify crop rectangle
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Tue, 28 Feb 2012 13:36:58 +0000 (14:36 +0100)]
snapshot: Update to the libomap3isp crop API
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Tue, 28 Feb 2012 13:36:38 +0000 (14:36 +0100)]
omap3isp: Support cropping for snapshot capture
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Tue, 28 Feb 2012 12:39:39 +0000 (13:39 +0100)]
snapshot: Add option to save snapshots to disk
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Tue, 7 Feb 2012 23:59:48 +0000 (00:59 +0100)]
controls: Add support for sensor gain
Support setting the global sensor gain.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Tue, 7 Feb 2012 23:58:18 +0000 (00:58 +0100)]
controls: Make sure subdev is open before setting CCDC black level
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Tue, 7 Feb 2012 23:48:21 +0000 (00:48 +0100)]
controls: Add preview engine digital gain and white balance support
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Thu, 9 Feb 2012 23:08:02 +0000 (00:08 +0100)]
omap3isp: Store ccdc, preview and sensor entities in sub-structures
This will allow adding entity-specific fields such as controls to the
omap3_isp_device structure.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Wed, 1 Feb 2012 14:01:45 +0000 (15:01 +0100)]
tools: Add div_round_up() macro
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Wed, 1 Feb 2012 14:02:07 +0000 (15:02 +0100)]
tools: Add min_t, max_t, clamp and clamp_t macros
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Wed, 1 Feb 2012 12:24:14 +0000 (13:24 +0100)]
subdev: Avoid double-close in v4l2_subdev_close()
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Wed, 22 Feb 2012 22:27:15 +0000 (23:27 +0100)]
Add support for exception events
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Wed, 1 Feb 2012 12:22:30 +0000 (13:22 +0100)]
omap3isp: Add exception fd watch type
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Wed, 22 Feb 2012 22:27:15 +0000 (23:27 +0100)]
Factor event handling code out into events.c
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Mon, 16 Apr 2012 18:10:34 +0000 (20:10 +0200)]
snapshot: Replace -y argument with -f to freely select the snapshot format
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Mon, 16 Apr 2012 20:42:06 +0000 (22:42 +0200)]
omap3isp: Support the CCDC lane shifter
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Fri, 6 Jan 2012 13:07:14 +0000 (14:07 +0100)]
omap3isp: Make number of buffers mandatory in pipeline pool definition
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Fri, 6 Jan 2012 12:44:44 +0000 (13:44 +0100)]
live: Fix video output localization
As V4L2 subdevice nodes use the V4L2 video device nodes major number,
there is no 1:1 correspondance between video device nodes numbers and
video device nodes minors. The video output device localization code
will thus fail if the omap3_isp driver is loaded before the omap_vout
driver.
Fix this by reading the video output device major and minor numbers from
sysfs and match them against the device node.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Sun, 11 Dec 2011 23:51:25 +0000 (00:51 +0100)]
videoout: Take pixel format as a parameter to vo_init()
Pass a struct v4l2_pix_format * instead of width and height.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Sun, 11 Dec 2011 18:54:10 +0000 (19:54 +0100)]
videoout: Remove unneeded crop settings
Setting the crop rectangle on the video output device isn't needed
(especially as the code forgot to set crop->type to
V4L2_BUF_TYPE_VIDEO_OUTPUT anyway).
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Sat, 15 Oct 2011 11:46:27 +0000 (13:46 +0200)]
omap3isp: Activate the pipeline when setting the scaler
Commit
e0c7399fc26ebb0df66e114a71702d5e6c387e44 ("Add
omap3_isp_pipeline_try_format()") wrongfully removed pipeline
configuration from omap3_isp_viewfinder_set_scaler(). Add it back.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Sat, 15 Oct 2011 11:44:13 +0000 (13:44 +0200)]
omap3isp: Handle scaler properly in omap3_isp_pipeline_activate()
Instead of retrieving the sensor default format and propagating through
the pipeline, configure the sensor with the previously selected format
(resulting from the scaler choice) and propagate it.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Sat, 15 Oct 2011 11:38:09 +0000 (13:38 +0200)]
omap3isp: Setup running and queued fields in omap3_isp_video_*()
Instead of setting the struct omap3_isp_video running and queued fields
manually before or after calling omap3_isp_video_start() and
omap3_isp_video_stop(), handle those fields in the functions directly.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Tue, 23 Aug 2011 09:58:31 +0000 (11:58 +0200)]
omap3isp: Close subdevs when destroying pipelines
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Tue, 23 Aug 2011 10:00:21 +0000 (12:00 +0200)]
omap3isp: Reorder viewfinder functions to avoid forward declarations
This will avoid forward declarations when introducing viewfinder timeout
recovery.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Mon, 22 Aug 2011 23:02:39 +0000 (01:02 +0200)]
omap3isp: Add omap3_isp_video_queue/dequeue_buffer() functions
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Mon, 22 Aug 2011 22:40:43 +0000 (00:40 +0200)]
omap3isp: Add omap3_isp_video_start/stop() functions
Those functions currently just encapsulate v4l2_stream_on() and
v4l2_stream_off(). They will later handle timeout timers.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Mon, 22 Aug 2011 22:40:06 +0000 (00:40 +0200)]
omap3isp: Add isp device field to struct omap3_isp_video
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Wed, 24 Aug 2011 02:07:01 +0000 (04:07 +0200)]
omap3isp: Don't mess up with omap3_isp_video::dequeued in pools
The dequeued field is used to track buffers that have been dequeued from
the viewfinder and owned by the display. Those buffers will be handed
back by the display, so they must not be requeued on the spot when the
viewfinder is paused and resumed. Pools don't suffer from that problem,
so don't use the dequeued field.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Wed, 24 Aug 2011 01:03:05 +0000 (03:03 +0200)]
omap3isp: Add support for 12-bit Bayer formats
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Fri, 14 Oct 2011 10:10:14 +0000 (12:10 +0200)]
omap3isp: Retrieve media device information in media_open()
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Tue, 18 Jan 2011 14:58:04 +0000 (15:58 +0100)]
omap3isp: CCDC black level compensation control
Add a function to modify the black level DC offset for the OMAP3 ISP
CCDC.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Wed, 5 Oct 2011 14:02:16 +0000 (16:02 +0200)]
live: Make the number of video buffers configurable
The -b argument can be used to set the number of video display buffers.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Wed, 5 Oct 2011 13:57:15 +0000 (15:57 +0200)]
videoout: Add vo_cleanup() function to close the video output device
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Wed, 5 Oct 2011 14:19:37 +0000 (16:19 +0200)]
live: Use global frame count to display the FPS counter
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Wed, 5 Oct 2011 09:58:30 +0000 (11:58 +0200)]
live: Add support for periodical skipping of frames on the display
When the sensor delivers a frame rate higher than what the display can
process, the OMAP3 ISP continuously runs out of buffers. The new --skip
command line option can be used to avoid that situation by skipping
display of n frames out of n+1.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Mon, 3 Oct 2011 12:29:01 +0000 (14:29 +0200)]
live: Locate the video output device node automatically
Iterate through the omap_vout video nodes and use the one with the
lowest minor as the video output device.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Sun, 4 Sep 2011 13:05:30 +0000 (15:05 +0200)]
controls: Add sensor exposure time and gains controls
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Wed, 24 Aug 2011 08:51:06 +0000 (10:51 +0200)]
omap3isp: Use ":SENSOR" to refer to the sensor when building pipelines
This removes dependencies on the specific sensor.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Wed, 24 Aug 2011 01:01:22 +0000 (03:01 +0200)]
list.h: Fix list_first_entry() and list_last_entry() macros
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Mon, 25 Jul 2011 10:06:20 +0000 (12:06 +0200)]
list.h: Add list_insert_before and list_insert_after macros
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Laurent Pinchart [Mon, 25 Jul 2011 10:06:20 +0000 (12:06 +0200)]
list.h: Add list_empty macro
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>