Friday, May 3. 2013, 10:04 AM
Several sensor-driver bug-fix patches, targeted at 3.9 and stable, unfortunately, didn't make it in 3.9, will be applied to 3.10:
Andrei Andreyanau (1):
mt9v022 driver: send valid HORIZONTAL_BLANKING values to mt9v024 soc camera
Benoît Thébaudeau (1):
soc-camera: mt9m111: Fix auto-exposure control
Guennadi Liakhovetski (1):
mt9m111: fix Oops - initialise context before dereferencing
Monday, March 11. 2013, 10:35 AM
Several minor driver improvements, no real functionality changes.
Julia Lawall (1):
drivers/media/platform/soc_camera/pxa_camera.c: use devm_ functions
Laurent Pinchart (2):
sh_vou: Use video_drvdata()
sh_vou: Use vou_dev instead of vou_file wherever possible
Monday, March 11. 2013, 10:33 AM
Two driver fixes:
Guennadi Liakhovetski (2):
sh-mobile-ceu-camera: fix SHARPNESS control default
mt9t112: mt9t111 format set up differs from mt9t112
Monday, March 11. 2013, 10:29 AM
Several updates and fixes for the 3.9 series, including - after a long battle - the removal of i.MX25 support from the mx2_camera driver, it now only supports i.MX27.
Fabio Estevam (1):
mx2_camera: Convert it to platform driver
Guennadi Liakhovetski (5):
soc-camera: properly fix camera probing races
soc-camera: fix repeated regulator requesting
soc-camera: remove struct soc_camera_device::video_lock
soc-camera: split struct soc_camera_link into host and subdevice parts
soc-camera: use devm_kzalloc in subdevice drivers
Javier Martin (3):
mx2_camera: Remove i.mx25 support.
mx2_camera: Remove 'buf_cleanup' callback.
mx2_camera: Remove buffer states.
Monday, March 11. 2013, 10:22 AM
Several commits ended up not making it into the V4L tree from my previous pull requests, so, they are repeated here. Additionally a long overdue soc-camera documentation update, several managed resource allocation optimisations, other minor updates.
Guennadi Liakhovetski (9):
media: mem2mem: make reference to struct m2m_ops in the core const
media: add a VEU MEM2MEM format conversion and scaling driver
media: soc-camera: use managed devm_regulator_bulk_get()
media: sh-mobile-ceu-camera: runtime PM suspending doesn't have to be synchronous
media: soc-camera: update documentation
media: soc-camera: remove superfluous JPEG checking
media: sh_mobile_csi2: use managed memory and resource allocations
media: sh_mobile_ceu_camera: use managed memory and resource allocations
MAINTAINERS: add entries for sh_veu and sh_vou V4L2 drivers
Javier Martin (1):
media: mx2_camera: Add image size HW limits.
Monday, March 11. 2013, 10:17 AM
Several fixes, which, however, somehow ended up being delayed a lot:
Anatolij Gustschin (1):
soc_camera: fix VIDIOC_S_CROP ioctl
Cyril Roelandt (1):
mx2_camera: use GFP_ATOMIC under spin lock.
Guennadi Liakhovetski (1):
media: sh-vou: fix compiler warnings
Monday, March 11. 2013, 10:03 AM
One new (not soc-camera) driver for a mem2mem video processing device, one driver (mx1_camera) declared broken, several driver updates.
Anatolij Gustschin (4):
V4L: soc_camera: allow reading from video device if supported
mt9v022: add v4l2 controls for blanking
mt9v022: support required register settings in snapshot mode
mt9v022: set y_skip_top field to zero as default
Frank SchÀfer (1):
ov2640: add support for V4L2_MBUS_FMT_YUYV8_2X8, V4L2_MBUS_FMT_RGB565_2X8_BE
Guennadi Liakhovetski (1):
media: add a VEU MEM2MEM format conversion and scaling driver
Shawn Guo (1):
media: mx1_camera: mark the driver BROKEN
Monday, March 11. 2013, 09:57 AM
Mostly compiler warning fixes for 3.7 after the struct v4l2_ioctl_ops::vidioc_s_crop prototype change, additionally a V4L2 control implementation fix for mt9v022
Anatolij Gustschin (1):
mt9v022: fix the V4L2_CID_EXPOSURE control
Guennadi Liakhovetski (7):
media: sh_vou: fix const cropping related warnings
media: sh_mobile_ceu_camera: fix const cropping related warnings
media: pxa_camera: fix const cropping related warnings
media: mx3_camera: fix const cropping related warnings
media: mx2_camera: fix const cropping related warnings
media: mx1_camera: use the default .set_crop() implementation
media: omap1_camera: fix const cropping related warnings
Thursday, October 4. 2012, 10:30 AM
My first version of the Android generic V4L2 camera HAL had 2 CPU-intensive stages in the camera preview pipeline. The first of them was converting video data from the camera output format (YUV) to an RGB format, suitable for displaying on the framebuffer. The second one is surface compositing onto the framebuffer. I tried to address the former by utilising a VEU (Video Engine Unit) block on SH7372. I used an existing vidix driver for MPlayer as a basis and implemented a Mem2Mem V4L2 VEU driver. Tests under Linux were successful and showed good performance with reduced CPU load. However, making Android to use the driver to convert data from camera output buffers directly into the preview layer buffer turned out to be difficult, because Android uses system memory to allocate virtually-continuous surface buffers. VEU, however, requires physically-continuous buffers for its DMA engine. In recent (4.0-4.1) Android versions this should be doable, using the ION memory manager on top of the Linux dmabuf subsystem. However, ION hasn't yet been integrated in the Android 4.0 version, that I've been using and switching to it would be a major development. As a proof of concept a short-cut has been implemented to force Android to use user-supplied buffers for the camera preview surface. These buffers are obtained from the VEU driver, using the MMAP method and are thus physically-continuous. This indeed increased the capture framerate from about 4 to the full 27 frames per second. However, this still hasn't produces any visible improvements, because software compositing still kept the display framerate below 5 fps. A proper solution would involve using ION for preview buffer management and implementing a hardware-accelerated compositing solution.
Thursday, October 4. 2012, 10:27 AM
A last minute 3.6 fixes pull request has been sent, but, unfortunately, hasn't managed it in before the release, they will have to be pushed to 3.6-stable:
Frank Schäfer (1):
ov2640: select sensor register bank before applying h/v-flip settings
Peter Senna Tschudin (2):
drivers/media/video/mx2_camera.c: fix error return code
drivers/media/video/soc_camera.c: fix error return code
Thursday, October 4. 2012, 10:21 AM
A couple of improvement patches for 3.7:
Javier Martin (1):
media: mx2_camera: Don't modify non volatile parameters in try_fmt.
Sachin Kamat (2):
soc_camera: Use module_platform_driver macro
soc_camera: Use devm_kzalloc function
Sylwester Nawrocki (1):
soc-camera: Use new selection target definitions
Thursday, October 4. 2012, 10:11 AM
These are some additional patches for 3.7, some of them also went to 3.6-fixes earlier.
Albert Wang (1):
media: soc_camera: don't clear pix->sizeimage in JPEG mode
Alex Gershgorin (2):
media: mx3_camera: buf_init() add buffer state check
mt9v022: Add support for mt9v024
Javier Martin (1):
media: mx2_camera: Fix clock handling for i.MX27.
Liu Ying (1):
media: mx3_camera: Improve data bus width check code for probe
Thursday, October 4. 2012, 10:01 AM
Several fixes for the 3.6 kernel have been pushed upstream, some of them were on the 3.6 pull request, but haven't been applied back then.
Albert Wang (1):
media: soc_camera: don't clear pix->sizeimage in JPEG mode
Alex Gershgorin (1):
media: mx3_camera: buf_init() add buffer state check
Fabio Estevam (2):
video: mx1_camera: Use clk_prepare_enable/clk_disable_unprepare
video: mx2_camera: Use clk_prepare_enable/clk_disable_unprepare
Javier Martin (1):
media: mx2_camera: Fix clock handling for i.MX27.
Thursday, October 4. 2012, 09:53 AM
Of the soc-camera 3.6 kernel patches, listed below, the series from Laurent is a part of his work to use soc-camera originated subdevice (e.g. camera sensor) drivers with non-soc-camera bridge (camera host) drivers, like the OMAP3 ISP driver.
Fabio Estevam (2):
video: mx1_camera: Use clk_prepare_enable/clk_disable_unprepare
video: mx2_camera: Use clk_prepare_enable/clk_disable_unprepare
Guennadi Liakhovetski (1):
V4L: soc-camera: add selection API host operations
Javier Martin (2):
media: mx2_camera: Fix mbus format handling
media: mx2_camera: Add YUYV output format.
Laurent Pinchart (18):
soc-camera: Don't fail at module init time if no device is present
soc-camera: Pass the physical device to the power operation
ov2640: Don't access the device in the g_mbus_fmt operation
ov772x: Don't access the device in the g_mbus_fmt operation
tw9910: Don't access the device in the g_mbus_fmt operation
soc_camera: Don't call .s_power() during probe
soc-camera: Continue the power off sequence if one of the steps fails
soc-camera: Add and use soc_camera_power_[on|off]() helper functions
soc-camera: Push probe-time power management to drivers
ov772x: Fix memory leak in probe error path
ov772x: Select the default format at probe time
ov772x: Don't fail in s_fmt if the requested format isn't supported
ov772x: try_fmt must not default to the current format
ov772x: Make to_ov772x convert from v4l2_subdev to ov772x_priv
ov772x: Add ov772x_read() and ov772x_write() functions
ov772x: Add support for SBGGR10 format
ov772x: Compute window size registers at runtime
ov772x: Stop sensor readout right after reset
Unfortunately, not all these patches managed it into 3.6, some have been delayed until 3.7.
Monday, June 4. 2012, 04:17 AM
Soc-camera / V4L update for the 3.5 kernel includes a user-provided line stride support from Laurent Pinchart and various driver updates:
Guennadi Liakhovetski (5):
V4L: soc-camera: (cosmetic) use a more explicit name for a host handler
V4L: mx2-camera: avoid overflowing 32-bits
V4L: soc-camera: switch to using the existing .enum_framesizes()
V4L: sh_mobile_ceu_camera: don't fail TRY_FMT
V4L: marvell-ccic: (cosmetic) remove redundant variable assignment
Kuninori Morimoto (1):
V4L2: sh_mobile_ceu: manage lower 8bit bus
Laurent Pinchart (10):
mx2_camera: Fix sizeimage computation in try_fmt()
soc_camera: Use soc_camera_device::sizeimage to compute buffer sizes
soc_camera: Use soc_camera_device::bytesperline to compute line sizes
soc-camera: Add plane layout information to struct soc_mbus_pixelfmt
soc-camera: Fix bytes per line computation for planar formats
soc-camera: Add soc_mbus_image_size
soc-camera: Honor user-requested bytesperline and sizeimage
mx2_camera: Use soc_mbus_image_size() instead of manual computation
soc-camera: Support user-configurable line stride
sh_mobile_ceu_camera: Support user-configurable line stride
Masahiro Nakai (1):
V4L2: mt9t112: fixup JPEG initialization workaround