Merge branch 'drm-dwhdmi-devel' of git://ftp.arm.linux.org.uk/~rmk/linux-arm into...
authorDave Airlie <airlied@redhat.com>
Wed, 15 Apr 2015 22:33:30 +0000 (08:33 +1000)
committerDave Airlie <airlied@redhat.com>
Wed, 15 Apr 2015 22:33:30 +0000 (08:33 +1000)
This set of patches adjust the setup of the HDMI CTS/N values for audio
support to be compliant with the work-around given in the iMX6 errata
documentation as part of the preparation for integrating audio support
for this driver, and also update the HDMI phy configuration for Rockchip
devices to improve the HDMI eye pattern.

* 'drm-dwhdmi-devel' of git://ftp.arm.linux.org.uk/~rmk/linux-arm:
  drm: rockchip/dw_hdmi-rockchip: improve for HDMI electrical test
  drm: bridge/dw_hdmi: separate VLEVCTRL settting into platform driver
  drm: bridge/dw_hdmi: fixed codec style
  drm: bridge/dw_hdmi: adjust n/cts setting order
  drm: bridge/dw_hdmi: protect n/cts setting with a mutex
  drm: bridge/dw_hdmi: combine hdmi_set_clock_regenerator_n() and hdmi_regenerate_cts()

Conflicts:
drivers/gpu/drm/imx/dw_hdmi-imx.c

1  2 
drivers/gpu/drm/imx/dw_hdmi-imx.c

index 1834ac8998cc2c698b826755c4871aa5fcb4c970,1032c07773e38d22ca6ebaf4c5639483ebee10cf..a3ecf1069b7637cd8a66574a9c61132923540d92
@@@ -70,15 -70,13 +70,15 @@@ static const struct dw_hdmi_curr_ctrl i
                118800000, { 0x091c, 0x091c, 0x06dc },
        }, {
                216000000, { 0x06dc, 0x0b5c, 0x091c },
 -      }
 +      }, {
 +              ~0UL, { 0x0000, 0x0000, 0x0000 },
 +      },
  };
  
- static const struct dw_hdmi_sym_term imx_sym_term[] = {
-       /*pixelclk   symbol   term*/
-       { 148500000, 0x800d, 0x0005 },
-       { ~0UL,      0x0000, 0x0000 }
+ static const struct dw_hdmi_phy_config imx_phy_config[] = {
+       /*pixelclk   symbol   term   vlev */
+       { 148500000, 0x800d, 0x0005, 0x01ad},
+       { ~0UL,      0x0000, 0x0000, 0x0000}
  };
  
  static int dw_hdmi_imx_parse_dt(struct imx_hdmi *hdmi)
@@@ -163,17 -139,15 +163,17 @@@ static enum drm_mode_status imx6dl_hdmi
  static struct dw_hdmi_plat_data imx6q_hdmi_drv_data = {
        .mpll_cfg   = imx_mpll_cfg,
        .cur_ctr    = imx_cur_ctr,
-       .sym_term   = imx_sym_term,
+       .phy_config = imx_phy_config,
        .dev_type   = IMX6Q_HDMI,
 +      .mode_valid = imx6q_hdmi_mode_valid,
  };
  
  static struct dw_hdmi_plat_data imx6dl_hdmi_drv_data = {
 -      .mpll_cfg   = imx_mpll_cfg,
 -      .cur_ctr    = imx_cur_ctr,
 +      .mpll_cfg = imx_mpll_cfg,
 +      .cur_ctr  = imx_cur_ctr,
-       .sym_term = imx_sym_term,
+       .phy_config = imx_phy_config,
 -      .dev_type   = IMX6DL_HDMI,
 +      .dev_type = IMX6DL_HDMI,
 +      .mode_valid = imx6dl_hdmi_mode_valid,
  };
  
  static const struct of_device_id dw_hdmi_imx_dt_ids[] = {