v4l: xilinx: Add Sobel filter driver

The filter applies two programmable 3x3 convolution matrices to the
image, one in each direction. The coefficients are currently hardcoded
to a Sobel filter.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
v4l: xilinx: sobel: Add interrupt support

The filter core can generate an interrupt when it has finished
processing the frame. While this is not required from a system point of
view during normal operation, it adds a trace point that can help
debugging pipeline problems. Register an interrupt handler that will
just acknowledge the interrupt and print a debug message.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
drm: xilinx: crtc: Remove unneccessary labels

Remove unnecessary labels.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
drm: xilinx: plane: Remove unused formats variable

Remove unused the xilinx_drm_plane_formats variable.
The plane format is detected based on the pipeline configuration,
instead of using static variables.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
drm: xilinx: plane: Check framebuffer format with plane format

In xilinx_drm_plane_mode_set(), check the framebuffer format
with the plane format before setting the plane with the framebuffer.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
drm: xilinx: cresample: Remove xilinx_cresample_remove()

xilinx_cresample_remove() is not needed as devm_* managed functions are used.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
drm: xilinx: osd: Remove xilinx_osd_remove()

Remove xilinx_osd_remove() as devm_* managed functions are used
in xilinx_osd.c.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
drm: xilinx: rgb2yuv: Remove xilinx_rgb2yuv_remove()

Remove xilinx_rgb2yuv_remove() as devm_* managed functions are used
in xilinx_rgb2yuv.c.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
drm: xilinx: vtc: Remove xilinx_vtc_remove()

Remove xilinx_vtc_remove() as devm_* managed functions are used
in xilinx_vtc.c.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
drm: xilinx: drv: Add xilinx_drm_format()

Add xilinx_drm_format() which converts the xilinx video format to
the drm format. Replace the previously defined osd video format
with this function / formats. This function can be used by other
sub-drivers.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
drm: xilinx: plane: Add the return code to xilinx_drm_plane_init_manager()

Add the return code to the proto type of xilinx_drm_plane_init_manager()
to detect the error from xilinx_drm_format().

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
drm: xilinx: osd: Add xlnx,video-format dts property

Add xlnx,video-format property. If not specified in dts, the driver reads
the value from register.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
drm: xilinx: cresample: Add input/output video format dts prop

Add input/output video format dts prop. It requires to detect
formats of IP and provide proper information to users.
xilinx_cresample_get_input/output_format() functions are added.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
drm: xilinx: plane: Add xilinx_drm_plane_check_format()

Add xilinx_drm_plane_check_format(), and replace
xilinx_drm_plane_get_format() with it. When fb is allocated, the requested
format is checked by calling this function. This function checks
if the given format is supported by available planes.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
drm: xilinx: plane: Add the 'planes' dts node

Add the 'planes' dts node under xilinx_drm. The IP instances for each plane
can be specified using this node, and this enables to have the same IPs
in 2 locations: 1 before OSD(for plane), and 1 after OSD(for crtc).

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
drm: xilinx: plane: Add rgb2yuv/cresample support

Add to support the pipeline configuration with rgb2yuv and cresample
for each plane. Proper format checking between IP connections is done.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
drm: xilinx: cresample: Add a compatible string

Add a compatible string to the devicetree binding documentation
(Documentation/devicetree/bindings/drm/xilinx/cresample.txt)
as the driver has been tested againt the new version of IP core.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
drm: xilinx: osd: Add a compatible string

Add a compatible string to the devicetree binding documentation
(Documentation/devicetree/bindings/drm/xilinx/osd.txt)
as the driver has been tested againt the new version of IP core.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
drm: xilinx: rgb2yuv: Add a compatible string

Add a compatible string to the devicetree binding documentation
(Documentation/devicetree/bindings/drm/xilinx/rgb2ycrcb.txt)
as the driver has been tested againt the new version of IP core.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
drm: xilinx: vtc: Add a compatible string

Add a compatible string to the devicetree binding documentation
(Documentation/devicetree/bindings/drm/xilinx/vtc.txt)
as the driver has been tested againt the new version of IP core.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>