|From:||Sylwester Nawrocki <email@example.com>|
|Subject:||[PATCH v2 00/12] V4L: Exynos 4x12 camera host interface (FIMC-LITE) driver|
|Date:||Mon, 30 Apr 2012 18:14:29 +0200|
|Cc:||firstname.lastname@example.org, email@example.com, firstname.lastname@example.org, email@example.com, firstname.lastname@example.org, email@example.com, firstname.lastname@example.org|
This change set adds support for FIMC-LITE devices, available in Exynos4x12 (and Exynos5) SoCs, to the existing s5p-fimc driver. The FIMC-LITE differs from regular FIMC in that it doesn't have a scaler, rotator, color converter and the DMA input. So it's just a basic camera host interface, with additional internal FIFO data output to other SoC sub-modules. Cropping at the host interface input is exposed on a subdev sink pad through the selection API, and composition performed by the output DMA engine can be controlled through selection compose targets on the video node. I tried to make the exynos-fimc-lite module as much independent as possible, to allow its reuse on any other SoCs that have same IP block. This change set also includes small enhancement of V4L2_CID_COLORFX and a patch adding support for this control at the s5p-fimc driver. Changes since first version: - modified V4L2_CID_COLORFX control patches, added V4L2_CID_COLORFX_CBCR control according to suggestions from Hans Verkuil; - fixed VIDIOC_S_FMT ioctl handler so it is now possible to configure random output memory buffer for composition, not only with same resolution as at the subdev's source pad; - corrected completely broken cropping handling at the subdev (looks like someone has forgotten to test it...); - dropped patch 03/13 "s5p-fimc: Simplify..." which was wrong. TODOs: - power management testing (when proper platform support for exynos4x12 is available in the mainline kernel), - complete internal FIFO output support to the internal ISP (should just require filling in the subdev ops stubs); - improve the interrupt handler. Regards, -- Sylwester Nawrocki Samsung Poland R&D Center Sylwester Nawrocki (12): V4L: Extend V4L2_CID_COLORFX with more image effects s5p-fimc: Move m2m node driver into separate file s5p-fimc: Use v4l2_subdev internal ops to register video nodes s5p-fimc: Refactor the register interface functions s5p-fimc: Add FIMC-LITE register definitions s5p-fimc: Rework the video pipeline control functions s5p-fimc: Prefix format enumerations with FIMC_FMT_ s5p-fimc: Minor cleanups s5p-fimc: Make sure an interrupt is properly requested s5p-fimc: Add support for Exynos4x12 FIMC-LITE s5p-fimc: Update copyright notices s5p-fimc: Add color effect control Documentation/DocBook/media/v4l/compat.xml | 13 + Documentation/DocBook/media/v4l/controls.xml | 100 +- Documentation/DocBook/media/v4l/v4l2.xml | 5 +- drivers/media/video/Kconfig | 24 +- drivers/media/video/s5p-fimc/Kconfig | 48 + drivers/media/video/s5p-fimc/Makefile | 6 +- drivers/media/video/s5p-fimc/fimc-capture.c | 297 +++-- drivers/media/video/s5p-fimc/fimc-core.c | 1091 +++--------------- drivers/media/video/s5p-fimc/fimc-core.h | 252 ++--- drivers/media/video/s5p-fimc/fimc-lite-reg.c | 301 +++++ drivers/media/video/s5p-fimc/fimc-lite-reg.h | 153 +++ drivers/media/video/s5p-fimc/fimc-lite.c | 1547 ++++++++++++++++++++++++++ drivers/media/video/s5p-fimc/fimc-lite.h | 209 ++++ drivers/media/video/s5p-fimc/fimc-m2m.c | 820 ++++++++++++++ drivers/media/video/s5p-fimc/fimc-mdevice.c | 405 ++++--- drivers/media/video/s5p-fimc/fimc-mdevice.h | 18 +- drivers/media/video/s5p-fimc/fimc-reg.c | 613 +++++----- drivers/media/video/s5p-fimc/fimc-reg.h | 326 ++++++ drivers/media/video/s5p-fimc/regs-fimc.h | 301 ----- drivers/media/video/v4l2-ctrls.c | 7 + include/linux/videodev2.h | 29 +- include/media/s5p_fimc.h | 16 + 22 files changed, 4593 insertions(+), 1988 deletions(-) create mode 100644 drivers/media/video/s5p-fimc/Kconfig create mode 100644 drivers/media/video/s5p-fimc/fimc-lite-reg.c create mode 100644 drivers/media/video/s5p-fimc/fimc-lite-reg.h create mode 100644 drivers/media/video/s5p-fimc/fimc-lite.c create mode 100644 drivers/media/video/s5p-fimc/fimc-lite.h create mode 100644 drivers/media/video/s5p-fimc/fimc-m2m.c create mode 100644 drivers/media/video/s5p-fimc/fimc-reg.h delete mode 100644 drivers/media/video/s5p-fimc/regs-fimc.h -- 1.7.10
Copyright © 2012, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds