rockchip: video: refactor rk_vop and split RK3288-specific code off
authorPhilipp Tomsich <philipp.tomsich@theobroma-systems.com>
Wed, 31 May 2017 15:59:30 +0000 (17:59 +0200)
committerSimon Glass <sjg@chromium.org>
Thu, 8 Jun 2017 03:30:49 +0000 (21:30 -0600)
commitd46d40474a7e77b1640acd040223af8574ebe5ac
treec9b4aa2e0f4bee2c56611d21645b409a18f64f90
parent89b2b6186d259014c217d887463a5030d0c5f23a
rockchip: video: refactor rk_vop and split RK3288-specific code off

To prepare for adding the RK3399 VOP driver (which shares most of its
registers and config logic with the RK3228 VOP), this change refactors
the driver and splits the RK3288-specific driver off.

The changes in detail are:
- introduces a data-structure for chip-specific drivers to register
  features/callbacks with the common driver: at this time, this is
  limited to a callback for setting the pin polarities (between the
  VOP and the encoder modules) and a flag to signal 10bit RGB
  capability
- refactors the probing of regulators into a helper function that
  can take a list of regulator names to probe and autoset
- moves the priv data-structure into a (common) header file to be
  used by the chip-specific drivers to provide base addresses to
  the common driver
- uses a callback into the chip-specific driver to set pin polarities
  (replacing the direct register accesses previously used)
- splits enabling the output (towards an encoder) into a separate
  help function withint the common driver

Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
arch/arm/include/asm/arch-rockchip/vop_rk3288.h
drivers/video/rockchip/Makefile
drivers/video/rockchip/rk3288_vop.c [new file with mode: 0644]
drivers/video/rockchip/rk_vop.c
drivers/video/rockchip/rk_vop.h [new file with mode: 0644]