sunxi: video: HDMI: Fix clock setup
authorJernej Skrabec <jernej.skrabec@siol.net>
Sun, 24 Mar 2019 18:26:40 +0000 (19:26 +0100)
committerAnatolij Gustschin <agust@denx.de>
Thu, 28 Mar 2019 22:45:41 +0000 (23:45 +0100)
commit1feed358ed15d795929cd6618b2f450719dbe416
treec82fbe5244905a422e3b33fbd2cda29fbe131b2c
parent2b9b9cdd5f9ae1cbc786ba3c2255a51b3ea4a636
sunxi: video: HDMI: Fix clock setup

Currently, HDMI driver doesn't consider minimum and maximum allowed rate
of pll3 (video PLL). It works most of the time, but not always.

Consider monitor with resolution 1920x1200, which has pixel clock rate
of 154 MHz. Current code would determine that pll3 rate has to be set to
154 MHz. However, minimum supported rate is 192 MHz. In this case video
output just won't work.

The reason why the driver is written in the way it is, is that at the
time HDMI PHY and clock configuration wasn't fully understood. But now
we have needed knowledge, so the issue can be fixed.

With this fix, clock configuration routine uses full range (1-16) for
clock divider instead of limited one (1, 2, 4, 11). It also considers
minimum and maximum allowed rate for pll3.

Fixes: 56009451d843 ("sunxi: video: Add A64/H3/H5 HDMI driver")
Signed-off-by: Jernej Skrabec <jernej.skrabec@siol.net>
Acked-by: Maxime Ripard <maxime.ripard@bootlin.com>
drivers/video/sunxi/sunxi_dw_hdmi.c