aboutsummaryrefslogtreecommitdiff
path: root/arch/arm
diff options
context:
space:
mode:
authorTony Lin <tony.lin@freescale.com>2011-09-02 14:36:11 +0800
committerTony Lin <tony.lin@freescale.com>2011-09-02 14:39:02 +0800
commitc036f2de93ae0c84bdcef918382179f524835968 (patch)
tree6f161ea5f43280f1047f94f6e76be1d565d794f3 /arch/arm
parentfc56a119ccc6f2a8671ccc7db12be0366de6a482 (diff)
ENGR00155893 [mx6q]clock: correct set parent function
set periph_clk_sel to derive clock from periph_clk2_clk Signed-off-by: Tony Lin <tony.lin@freescale.com>
Diffstat (limited to 'arch/arm')
-rw-r--r--arch/arm/mach-mx6/clock.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/arch/arm/mach-mx6/clock.c b/arch/arm/mach-mx6/clock.c
index 0ccae284bb0..58484407ec3 100644
--- a/arch/arm/mach-mx6/clock.c
+++ b/arch/arm/mach-mx6/clock.c
@@ -938,9 +938,12 @@ static int _clk_periph_set_parent(struct clk *clk, struct clk *parent)
reg &= ~MXC_CCM_CBCDR_PERIPH_CLK_SEL;
__raw_writel(reg, MXC_CCM_CBCDR);
} else {
- /* Set the periph_clk2_podf divider to divide by 1. */
reg = __raw_readl(MXC_CCM_CBCDR);
+ /* Set the periph_clk2_podf divider to divide by 1. */
reg &= ~MXC_CCM_CBCDR_PERIPH_CLK2_PODF_MASK;
+ /* Clear periph_clk_sel to select periph_clk2. */
+ reg |= MXC_CCM_CBCDR_PERIPH_CLK_SEL;
+
__raw_writel(reg, MXC_CCM_CBCDR);
/* Set the periph_clk2_sel mux. */