[media] v4l: Add Renesas R-Car FDP1 Driver
The FDP1 driver performs advanced de-interlacing on a memory 2 memory based video stream, and supports conversion from YCbCr/YUV to RGB pixel formats Signed-off-by: Kieran Bingham <kieran+renesas@bingham.xyz> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
This commit is contained in:
parent
3547d32be0
commit
4710b752e0
@ -48,6 +48,7 @@ For more details see the file COPYING in the source distribution of Linux.
|
|||||||
pvrusb2
|
pvrusb2
|
||||||
pxa_camera
|
pxa_camera
|
||||||
radiotrack
|
radiotrack
|
||||||
|
rcar-fdp1
|
||||||
saa7134
|
saa7134
|
||||||
sh_mobile_ceu_camera
|
sh_mobile_ceu_camera
|
||||||
si470x
|
si470x
|
||||||
|
37
Documentation/media/v4l-drivers/rcar-fdp1.rst
Normal file
37
Documentation/media/v4l-drivers/rcar-fdp1.rst
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
Renesas R-Car Fine Display Processor (FDP1) Driver
|
||||||
|
==================================================
|
||||||
|
|
||||||
|
The R-Car FDP1 driver implements driver-specific controls as follows.
|
||||||
|
|
||||||
|
``V4L2_CID_DEINTERLACING_MODE (menu)``
|
||||||
|
The video deinterlacing mode (such as Bob, Weave, ...). The R-Car FDP1
|
||||||
|
driver implements the following modes.
|
||||||
|
|
||||||
|
.. flat-table::
|
||||||
|
:header-rows: 0
|
||||||
|
:stub-columns: 0
|
||||||
|
:widths: 1 4
|
||||||
|
|
||||||
|
* - ``"Progressive" (0)``
|
||||||
|
- The input image video stream is progressive (not interlaced). No
|
||||||
|
deinterlacing is performed. Apart from (optional) format and encoding
|
||||||
|
conversion output frames are identical to the input frames.
|
||||||
|
* - ``"Adaptive 2D/3D" (1)``
|
||||||
|
- Motion adaptive version of 2D and 3D deinterlacing. Use 3D deinterlacing
|
||||||
|
in the presence of fast motion and 2D deinterlacing with diagonal
|
||||||
|
interpolation otherwise.
|
||||||
|
* - ``"Fixed 2D" (2)``
|
||||||
|
- The current field is scaled vertically by averaging adjacent lines to
|
||||||
|
recover missing lines. This method is also known as blending or Line
|
||||||
|
Averaging (LAV).
|
||||||
|
* - ``"Fixed 3D" (3)``
|
||||||
|
- The previous and next fields are averaged to recover lines missing from
|
||||||
|
the current field. This method is also known as Field Averaging (FAV).
|
||||||
|
* - ``"Previous field" (4)``
|
||||||
|
- The current field is weaved with the previous field, i.e. the previous
|
||||||
|
field is used to fill missing lines from the current field. This method
|
||||||
|
is also known as weave deinterlacing.
|
||||||
|
* - ``"Next field" (5)``
|
||||||
|
- The current field is weaved with the next field, i.e. the next field is
|
||||||
|
used to fill missing lines from the current field. This method is also
|
||||||
|
known as weave deinterlacing.
|
@ -7712,6 +7712,15 @@ F: Documentation/devicetree/bindings/media/renesas,fcp.txt
|
|||||||
F: drivers/media/platform/rcar-fcp.c
|
F: drivers/media/platform/rcar-fcp.c
|
||||||
F: include/media/rcar-fcp.h
|
F: include/media/rcar-fcp.h
|
||||||
|
|
||||||
|
MEDIA DRIVERS FOR RENESAS - FDP1
|
||||||
|
M: Kieran Bingham <kieran@bingham.xyz>
|
||||||
|
L: linux-media@vger.kernel.org
|
||||||
|
L: linux-renesas-soc@vger.kernel.org
|
||||||
|
T: git git://linuxtv.org/media_tree.git
|
||||||
|
S: Supported
|
||||||
|
F: Documentation/devicetree/bindings/media/renesas,fdp1.txt
|
||||||
|
F: drivers/media/platform/rcar_fdp1.c
|
||||||
|
|
||||||
MEDIA DRIVERS FOR RENESAS - VIN
|
MEDIA DRIVERS FOR RENESAS - VIN
|
||||||
M: Niklas Söderlund <niklas.soderlund@ragnatech.se>
|
M: Niklas Söderlund <niklas.soderlund@ragnatech.se>
|
||||||
L: linux-media@vger.kernel.org
|
L: linux-media@vger.kernel.org
|
||||||
|
@ -307,6 +307,19 @@ config VIDEO_SH_VEU
|
|||||||
Support for the Video Engine Unit (VEU) on SuperH and
|
Support for the Video Engine Unit (VEU) on SuperH and
|
||||||
SH-Mobile SoCs.
|
SH-Mobile SoCs.
|
||||||
|
|
||||||
|
config VIDEO_RENESAS_FDP1
|
||||||
|
tristate "Renesas Fine Display Processor"
|
||||||
|
depends on VIDEO_DEV && VIDEO_V4L2 && HAS_DMA
|
||||||
|
depends on ARCH_SHMOBILE || COMPILE_TEST
|
||||||
|
select VIDEOBUF2_DMA_CONTIG
|
||||||
|
select V4L2_MEM2MEM_DEV
|
||||||
|
---help---
|
||||||
|
This is a V4L2 driver for the Renesas Fine Display Processor
|
||||||
|
providing colour space conversion, and de-interlacing features.
|
||||||
|
|
||||||
|
To compile this driver as a module, choose M here: the module
|
||||||
|
will be called rcar_fdp1.
|
||||||
|
|
||||||
config VIDEO_RENESAS_JPU
|
config VIDEO_RENESAS_JPU
|
||||||
tristate "Renesas JPEG Processing Unit"
|
tristate "Renesas JPEG Processing Unit"
|
||||||
depends on VIDEO_DEV && VIDEO_V4L2 && HAS_DMA
|
depends on VIDEO_DEV && VIDEO_V4L2 && HAS_DMA
|
||||||
|
@ -48,6 +48,7 @@ obj-$(CONFIG_VIDEO_SH_VOU) += sh_vou.o
|
|||||||
obj-$(CONFIG_SOC_CAMERA) += soc_camera/
|
obj-$(CONFIG_SOC_CAMERA) += soc_camera/
|
||||||
|
|
||||||
obj-$(CONFIG_VIDEO_RENESAS_FCP) += rcar-fcp.o
|
obj-$(CONFIG_VIDEO_RENESAS_FCP) += rcar-fcp.o
|
||||||
|
obj-$(CONFIG_VIDEO_RENESAS_FDP1) += rcar_fdp1.o
|
||||||
obj-$(CONFIG_VIDEO_RENESAS_JPU) += rcar_jpu.o
|
obj-$(CONFIG_VIDEO_RENESAS_JPU) += rcar_jpu.o
|
||||||
obj-$(CONFIG_VIDEO_RENESAS_VSP1) += vsp1/
|
obj-$(CONFIG_VIDEO_RENESAS_VSP1) += vsp1/
|
||||||
|
|
||||||
|
2445
drivers/media/platform/rcar_fdp1.c
Normal file
2445
drivers/media/platform/rcar_fdp1.c
Normal file
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user