OSDN Git Service

drm/bridge: dw-hdmi: Use automatic CTS generation mode when using non-AHB audio
authorNeil Armstrong <narmstrong@baylibre.com>
Wed, 12 Jun 2019 08:51:47 +0000 (10:51 +0200)
committerAndrzej Hajda <a.hajda@samsung.com>
Mon, 1 Jul 2019 10:33:19 +0000 (12:33 +0200)
commitfdbdcc83ffd7d00265a531e71f1d166566c09d66
tree26399225c5740d4cbbd01a0a92d1425ebb2ef086
parent52c2197aae1b9809830d59bc8f5fa95f7372b0c7
drm/bridge: dw-hdmi: Use automatic CTS generation mode when using non-AHB audio

When using an I2S source using a different clock source (usually the I2S
audio HW uses dedicated PLLs, different from the HDMI PHY PLL), fixed
CTS values will cause some frequent audio drop-out and glitches as
reported on Amlogic, Allwinner and Rockchip SoCs setups.

Setting the CTS in automatic mode will let the HDMI controller generate
automatically the CTS value to match the input audio clock.

The DesignWare DW-HDMI User Guide explains:
  For Automatic CTS generation
  Write "0" on the bit field "CTS_manual", Register 0x3205: AUD_CTS3

The DesignWare DW-HDMI Databook explains :
  If "CTS_manual" bit equals 0b this registers contains "audCTS[19:0]"
  generated by the Cycle time counter according to specified timing.

Cc: Jernej Skrabec <jernej.skrabec@siol.net>
Cc: Maxime Ripard <maxime.ripard@bootlin.com>
Cc: Jonas Karlman <jonas@kwiboo.se>
Cc: Heiko Stuebner <heiko@sntech.de>
Cc: Jerome Brunet <jbrunet@baylibre.com>
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
Tested-by: Jernej Skrabec <jernej.skrabec@siol.net>
Reviewed-by: Jernej Skrabec <jernej.skrabec@siol.net>
Tested-by: Douglas Anderson <dianders@chromium.org>
Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20190612085147.26971-1-narmstrong@baylibre.com
drivers/gpu/drm/bridge/synopsys/dw-hdmi.c