summaryrefslogtreecommitdiff
path: root/isp
AgeCommit message (Collapse)Author
2015-11-12Add support for static compilationHEADmasterLaurent Pinchart
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2015-11-12isp: stats: Fix signed vs. unsigned comparison warningLaurent Pinchart
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2015-11-12isp: v4l2: Fix capabilities parsingLaurent Pinchart
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>
2013-03-07isp: Support format conversion in scalerLaurent Pinchart
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>
2013-03-07isp: Support allocating an output buffers pool for the viewfinderLaurent Pinchart
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>
2013-02-11isp: Add crop support for the viewfinderLaurent Pinchart
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2013-02-11isp: Support raw viewfinder formatsLaurent Pinchart
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>
2012-11-15media: Fix valgrind warningsLaurent Pinchart
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>
2012-10-24isp: Use the requested input format for M2M pipelinesLaurent Pinchart
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>
2012-10-20omap3isp: Scale instead of cropping when scaling on the sensorLaurent Pinchart
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>
2012-10-20isp: Add scaler APILaurent Pinchart
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2012-10-20isp: Protect against starting viewfinder and snapshot at the same timeLaurent Pinchart
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2012-10-20isp: Split the viewfinder and snapshot APILaurent Pinchart
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>
2012-10-20isp: Add support for memory-to-memory pipelinesLaurent Pinchart
Make building and trying format possible on a pipeline that starts with a video node. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2012-10-20isp: Remove scaler argument to omap3_isp_pipeline_try_format()Laurent Pinchart
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2012-10-20isp: Add live zoom supportLaurent Pinchart
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2012-10-20v4l2: Print the device name in error messagesLaurent Pinchart
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2012-10-20v4l2-pool: Initialize buffer indexes when creating the poolLaurent Pinchart
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2012-10-20isp: Emulate global gain for sensors that only expose color gainsLaurent Pinchart
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2012-06-21sensor: Fix omap3_isp_sensor_get_exposure()Laurent Pinchart
The function tried to set the control instead of getting it. Fix this. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2012-06-21sensor: Support setting gains selectivelyLaurent Pinchart
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>
2012-05-02stats: Don't mess up Bayer pattern when setting the AEWB rectangleLaurent Pinchart
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2012-05-01omap3isp: Enable statistics for snapshot captureLaurent Pinchart
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2012-05-01stats: Add support for the AEWB statistics engineLaurent Pinchart
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2012-04-20omap3isp: Add ISP crop supportLaurent Pinchart
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>
2012-04-19omap3isp: Add support for greyscale sensorsLaurent Pinchart
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2012-04-17omap3isp: Unsupported subdev ioctls returned -EINVAL on older kernelsLaurent Pinchart
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2012-04-17omap3isp: Support capture of multiple snapshotsLaurent Pinchart
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2012-04-16omap3isp: Make viewfinder optionalLaurent Pinchart
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2012-04-16omap3isp: Support cropping for snapshot captureLaurent Pinchart
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2012-04-16controls: Add support for sensor gainLaurent Pinchart
Support setting the global sensor gain. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2012-04-16controls: Make sure subdev is open before setting CCDC black levelLaurent Pinchart
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2012-04-16controls: Add preview engine digital gain and white balance supportLaurent Pinchart
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2012-04-16omap3isp: Store ccdc, preview and sensor entities in sub-structuresLaurent Pinchart
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>
2012-04-16tools: Add div_round_up() macroLaurent Pinchart
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2012-04-16tools: Add min_t, max_t, clamp and clamp_t macrosLaurent Pinchart
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2012-04-16subdev: Avoid double-close in v4l2_subdev_close()Laurent Pinchart
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2012-04-16omap3isp: Add exception fd watch typeLaurent Pinchart
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2012-04-16omap3isp: Support the CCDC lane shifterLaurent Pinchart
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2012-01-06omap3isp: Make number of buffers mandatory in pipeline pool definitionLaurent Pinchart
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-10-15omap3isp: Activate the pipeline when setting the scalerLaurent Pinchart
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>
2011-10-15omap3isp: Handle scaler properly in omap3_isp_pipeline_activate()Laurent Pinchart
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>
2011-10-15omap3isp: Setup running and queued fields in omap3_isp_video_*()Laurent Pinchart
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>
2011-10-14omap3isp: Close subdevs when destroying pipelinesLaurent Pinchart
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-10-14omap3isp: Reorder viewfinder functions to avoid forward declarationsLaurent Pinchart
This will avoid forward declarations when introducing viewfinder timeout recovery. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-10-14omap3isp: Add omap3_isp_video_queue/dequeue_buffer() functionsLaurent Pinchart
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-10-14omap3isp: Add omap3_isp_video_start/stop() functionsLaurent Pinchart
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>
2011-10-14omap3isp: Add isp device field to struct omap3_isp_videoLaurent Pinchart
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-10-14omap3isp: Don't mess up with omap3_isp_video::dequeued in poolsLaurent Pinchart
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>
2011-10-14omap3isp: Add support for 12-bit Bayer formatsLaurent Pinchart
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>