clk: si5351: fix PLL reset
authorRussell King <rmk+kernel@armlinux.org.uk>
Wed, 26 Jul 2017 08:18:08 +0000 (09:18 +0100)
committerStephen Boyd <sboyd@codeaurora.org>
Fri, 1 Sep 2017 23:00:54 +0000 (16:00 -0700)
commit73c950da6ec523136090d6d4d6907a6ea8e8b67b
tree1c526ade4802ad9939bd7cdefa18b782333eb79c
parent4ab6cf11e703de24f21a50a027a48fca787f7a00
clk: si5351: fix PLL reset

Changing the audio sample rate on the SolidRun Cubox disrupts the video
output.  The Si5351 provides both the video clock (using PLLA on output
0) and the audio clock (using PLLB on output 2).

When the rate of clock output 2 is changed, it reconfigures PLLB, which
results in both PLLA and PLLB being reset.  The reset of PLLA causes
clock output 0 to be disrupted, thereby causing a loss of sync by the
attached display device.

Hence, each time the audio sample rate changes (eg, when a video player
starts up, or when starting to play music) the video display momentarily
blanks while the Si5351 settles down.  Prior to the commit below, this
behaviour did not happen.

Fix this by only resetting only the PLL which has been changed.

Fixes: 6dc669a22c77 ("clk: si5351: Add PLL soft reset")
Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
Acked-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
drivers/clk/clk-si5351.c