summaryrefslogtreecommitdiff
path: root/isp
AgeCommit message (Collapse)Author
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>
2011-10-14omap3isp: Retrieve media device information in media_open()Laurent Pinchart
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-10-14omap3isp: CCDC black level compensation controlLaurent Pinchart
Add a function to modify the black level DC offset for the OMAP3 ISP CCDC. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-09-04controls: Add sensor exposure time and gains controlsLaurent Pinchart
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-09-04omap3isp: Use ":SENSOR" to refer to the sensor when building pipelinesLaurent Pinchart
This removes dependencies on the specific sensor. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-09-04list.h: Fix list_first_entry() and list_last_entry() macrosLaurent Pinchart
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-09-04list.h: Add list_insert_before and list_insert_after macrosLaurent Pinchart
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-09-04list.h: Add list_empty macroLaurent Pinchart
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-09-04omap3isp: Add support for memory pools in the viewfinderLaurent Pinchart
Allocate buffers and start/stop pools. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-09-04omap3isp: Return v4l2_queue_buffer() return value directly on errorLaurent Pinchart
v4l2_queue_buffer() already returns -errno, don't compute that again but return the function's return value directly. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-09-04omap3isp: Implement pools buffer allocation and streaming eventsLaurent Pinchart
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-09-04omap3isp: Remove unused struct omap3_isp_device::resizer fieldLaurent Pinchart
The field isn't needed anymore, remove it. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-09-04omap3isp: Configure video node formats in omap3_isp_pipeline_try_formatLaurent Pinchart
To support buffer pools, configure video node formats automatically in omap3_isp_pipeline_try_format() instead of manually in the viewfinder and snapshot setup functions. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-09-04omap3isp: Add pools support in pipeline formats configurationLaurent Pinchart
Don't stop pipeline formats configuration at the first video device node, but go through pools until the end of the pipeline. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-09-04omap3isp: Add transparent buffer pools supportLaurent Pinchart
Buffers pools can be inserted in a pipeline between a video capture device and a video output device. They will automatically relay buffers from the capture device to the output device in a transparent way. One use case of buffer pools is to work around hardware issues. When the CCDC is directly connected to the preview engine, any ESD-induce noise on the HS or VS signals will make the preview engine loose sync, is it only relies on line counts. Introducing a buffer pool between the CCDC and preview engine work around the issue. This patch only implements buffer pool creation during pipeline build. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-09-04oamp3isp: Move video device open to omap3_isp_pipeline_build()Laurent Pinchart
Open video devices right away when they're added to the pipeline. This will help pools implementation. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>