]> git.karo-electronics.de Git - karo-tx-linux.git/commit
ENGR00329450 ARM: imx: set CLK_SET_RATE_GATE for gate and divider clocks
authorShawn Guo <shawn.guo@freescale.com>
Mon, 1 Sep 2014 02:52:56 +0000 (10:52 +0800)
committerNitin Garg <nitin.garg@freescale.com>
Fri, 16 Jan 2015 03:17:33 +0000 (21:17 -0600)
commitc6ad9b4bc8bbfd68f05048a278809835c618442f
tree6daf3088166be48ef933ecdcae5a7f9bc0e70aba
parent306115044be1722ec2a8ee05c0ed1e3dab8dafe8
ENGR00329450 ARM: imx: set CLK_SET_RATE_GATE for gate and divider clocks

A recent QSPI boot failure (5% possibility) on i.MX6SX reminds us that
the peripheral clocks are still missing the check, rate cannot be
changed when the clock is enabled due to the glitchy multiplexers.

Commit a63839445ad3 (ENGR00325423: ARM: imx: pllv3 can only be
configured when it's powered off) adds the check for PLL clocks but
misses the peripheral clocks.  The patch uses the help from clock
framework to check the condition with flag CLK_SET_RATE_GATE.

We adds flag CLK_SET_RATE_GATE for i.MX gate and divider clocks on
which the client drivers usually make clk_set_rate() call, so that the
call will fail when clock is still on instead of standing the risk of
running into glitch issue.

shawn.guo: cherry-pick commit 6487168bc783 from imx_3.10.y

Signed-off-by: Shawn Guo <shawn.guo@freescale.com>
arch/arm/mach-imx/clk.h