adv7604: Add adv7611 support

This patch adds support for the Analog Devices ADV7611 HDMI receiver.
The adv7611 is quite similar to the adv7604. It has only one instead of four
HDMI inputs and no analog frontend though. Also some register bits have been
shuffled around, but large parts of their register maps are compatible.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
adv7604: Remove subdev control handlers

Control operations are handled by the control framework and the subdev
control handlers are never called directly. Remove them.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
media: xilinx: remapper: Remove of_match_ptr()

The OF device ID table is always compiled in, there's no need to use the
of_match_ptr() macro to initialize the struct device of_match_table
field conditionally.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
media: xilinx: sobel: Remove of_match_ptr()

The OF device ID table is always compiled in, there's no need to use the
of_match_ptr() macro to initialize the struct device of_match_table
field conditionally.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
media: xilinx: tpg: Remove of_match_ptr()

The OF device ID table is always compiled in, there's no need to use the
of_match_ptr() macro to initialize the struct device of_match_table
field conditionally.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
media: xilinx: vipp: Remove of_match_ptr()

The OF device ID table is always compiled in, there's no need to use the
of_match_ptr() macro to initialize the struct device of_match_table
field conditionally.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
media: xilinx: sobel: Use devm_ioremap_resource()

devm_request_and_ioremap() is deprecated in favor of
devm_ioremap_resource(). Use it.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
media: xilinx: tpg: Fix devm_ioremap_resource() return value check

devm_ioremap_resource() returns a negative integer on failure, not a
NULL pointer. Fix the error check.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
arm: dts: zc706-vdf: Add second I2C controller

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
arm: dts: zc706-vdf: Add Imageon extension board I2C devices

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
arm: dts: zc706-vdf: Add HDMI capture pipeline

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
media: xilinx: vip: Add pads and formats to struct xvip_device

This will simplify video IP drivers by handling pads and formats
allocation in a central place.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
media: xilinx: vip: Group functions in sections

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
media: xilinx: tpg: Remove NULL entry at the end of control menu strings

The V4L2 controls framework doesn't require a NULL entry at the end of
menu controls strings arrays. Remove it.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
media: xilinx: tpg: Use the standard V4L2_CID_TEST_PATTERN control

Replace the custom V4L2_CID_XILINX_TPG_PATTERN control with
V4L2_CID_TEST_PATTERN.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
media: xilinx: tpg: Make number of pads dynamic

Instantiate two pads or one pad depending on whether the TPG has been
synthesized with or without the AXI stream slave interface. This
replaces the DT passthrough property.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
media: xilinx: Add Video Timing Controller driver

The Video Timing Controller (VTC) includes a timing detector and/or a
timing generator. Only the generator is currently supported.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
media: xilinx: tpg: Add VTC support

When configured in pattern generation (non-passthrough) mode the TPG
requires a VTC generator to supply timing information. Request the VTC
if specified in the device tree and configure it when starting and
stopping the stream.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
[HACK] arm: dts: zynq-zc706: Boot over NFS

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
[HACK] adv7604: Temporarily hardcode platform data

Until we have proper devicetree support for the adv7604 hardcode the platform
data to those required for the IMAGEON board.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>