imx-drm: imx-drm-core: sanitise imx_drm_encoder_get_mux_id()
authorRussell King <rmk+kernel@arm.linux.org.uk>
Sun, 24 Nov 2013 13:02:52 +0000 (13:02 +0000)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Mon, 24 Feb 2014 12:04:00 +0000 (12:04 +0000)
commite76171b046e95e45266f3a4f4b900a5647e80d70
tree5be58ff4ff51bb58120710b2e87ca7df48ea6da8
parentcf83eb24d22f3a9580fb86ee64e2830c65df062a
imx-drm: imx-drm-core: sanitise imx_drm_encoder_get_mux_id()

Address the following issues:
- imx_drm_encoder_get_mux_id() searches the CRTC list for the matching
  CRTC, and returns the position within this list as the MUX programming
  value for encoders.  This is sub-optimal for two reasons:
  1. It relies upon the CRTC list not changing during the lifetime of
     the driver.
  2. It is dependent on the initialisation order of the CRTCs.

  We address (1) in this patch, leaving (2) until a better solution can
  be found, as (2) requires larger changes.

- imx_drm_encoder is unused.  Instead, pass the drm_encoder which is
  slightly more useful; all callers pass encoder->crtc as the required
  crtc, so move this inside the function.

Acked-by: Philipp Zabel <p.zabel@pengutronix.de>
Acked-by: Shawn Guo <shawn.guo@linaro.org>
Reviewed-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
drivers/staging/imx-drm/imx-drm-core.c
drivers/staging/imx-drm/imx-drm.h
drivers/staging/imx-drm/imx-hdmi.c
drivers/staging/imx-drm/imx-ldb.c