]> asedeno.scripts.mit.edu Git - linux.git/commit
clk: si5351: Apply PLL soft reset before enabling the outputs
authorSergej Sawazki <sergej@taudac.com>
Sat, 16 Sep 2017 11:44:42 +0000 (13:44 +0200)
committerStephen Boyd <sboyd@codeaurora.org>
Fri, 22 Dec 2017 02:09:19 +0000 (18:09 -0800)
commitb26ff127c52c005ac4eb99ebff7bd17c240c2e89
treedac2abdb49523767791ac8b42b35bde65f4b562a
parent51279ef9f64cf7eb8b3f891a2b60fa1aa4938afc
clk: si5351: Apply PLL soft reset before enabling the outputs

The "Si5351A/B/C Data Sheet" states to apply a PLL soft reset before
enabling the output clocks [1]. This is required to get a deterministic
phase relationship between the output clocks.

Without resetting the PLL, the phase relationship between the clocks is
unpredictable. Fix this by resetting the PLL in si5351_clkout_prepare().

References:
[1] https://www.silabs.com/Support%20Documents/TechnicalDocs/Si5351-B.pdf
    Figure 12 ("I2C Programming Procedure")

Cc: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
Cc: Rabeeh Khoury <rabeeh@solid-run.com>
Cc: Russell King <linux@armlinux.org.uk>
Signed-off-by: Sergej Sawazki <sergej@taudac.com>
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
drivers/clk/clk-si5351.c