media: xilinx: vip: Add xvip_init_formats()

Add xvip_init_formats(), which initializes the formats of a subdevice.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
media: xilinx: vip: Add xvip_start()

Add xvip_start(), which starts the IP and enables the reg update.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
media: xilinx: vip: Add xvip_stop()

Add xvip_stop(), which resets and stops the IP.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
media: xilinx: vip: Add xvip_set_size()

Add xvip_set_size(), which sets the size of IP.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
media: xilinx: vip: Add enable/disable reg update functions

Add xvip_enable_reg_update() and xvip_disable_reg_update().
Sometimes drivers need to enable and disable register update for atomicity.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
media: xilinx: tpg: Use xvip_enum_mbus_code()

Use xvip_enum_mbux_code() instead of own function, xtpg_enum_mbus_code().

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
media: xilinx: tpg: Use xvip_enum_frame_size()

Replace xtpg_enum_frame_size() with xvip_enum_frame_size().

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
media: xilinx: tpg: Use xvip_get_pad_format()

Replace __xtpg_get_pad_format() with xvip_get_pad_format().

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
media: xilinx: tpg: Use xvip_set_format()

Use xvip_set_format().

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
media: xilinx: tpg: Use xvip_start()

Use xvip_start().

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
media: xilinx: tpg: Use xvip_stop()

Use xvip_stop().

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
media: xilinx: tpg: Use xvip_set_size()

Use xvip_set_size().

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
media: xilinx: tpg: Fix xtpg_set_format()

The TPG is not able to have different input and output formats.
So, use the format propagation scheme for xtpg_set_format().

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
media: xilinx: Add Color Correction Matrix(CCM) driver

Add Color Correction Matrix(CCM) driver. The CCM does the color correction
using coefficient matrix such as adjusting white balance, color case,
brightness, or contrast of an image.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
media: xilinx: Add Color Filter Array (CFA) driver

Add Color Filter Array(CFA) driver. The CFA reconstructs sub-sampled
color data for images captured by a Bayer Color Filter Array image sensors.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
media: xilinx: Add Chroma Resampler (CRESAMPLE) driver

Add Chroma Resampler(CRESAMPLE) driver. The CRESAMPLE converts between
sub-sample formatch such as YUV444, YUV422, and YUV420.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
media: xilinx: Add Image Enhancement (ENHANCE) driver

Add Image Enhancement(ENHANCE) driver. The ENHANCE reduces image noise and
enhance the edges of objects in each picture. Two dimensional filters are
used to suppress noise while preserving and enhancing edges.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
media: xilinx: Add Gamma Correction (GAMMA) driver

Add Gamma Correction(GAMMA) driver. The GAMMA is to do gamma correction of
image data to match the response of display devices.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
media: xilinx: Add RGB to YUV (RGB2YUV) driver

Add RGB to YUV(RGB2YUV) driver. The RGB2YUV converts three input RGB color
samples to three output YUV samples.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
media: xilinx: Add Stuck(Defective) Pixel Correction (SPC) driver

Add Stuck(Defective) Pixel Correction(SPC) driver. The SPC performs real-time
detection and correction of defective pixels in a camera image sensor array.

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