diff options
author | Tom Rini <trini@ti.com> | 2014-11-05 17:48:09 (GMT) |
---|---|---|
committer | Tom Rini <trini@ti.com> | 2014-11-05 17:48:09 (GMT) |
commit | 625509ab0edbb7d943ad9028de3c21ca48aa58be (patch) | |
tree | 2ea6bda524b3ad7e964f4357428de2890ad81cf4 /arch/arm/cpu/armv7/mx6/soc.c | |
parent | d5325eff10922acb11c39efece6d5f24de5b1998 (diff) | |
parent | 0b23780ff02bdbec46fac1fe4151e2ebf1eae881 (diff) | |
download | u-boot-625509ab0edbb7d943ad9028de3c21ca48aa58be.tar.xz |
Merge branch 'master' of git://www.denx.de/git/u-boot-imx
Diffstat (limited to 'arch/arm/cpu/armv7/mx6/soc.c')
-rw-r--r-- | arch/arm/cpu/armv7/mx6/soc.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/arch/arm/cpu/armv7/mx6/soc.c b/arch/arm/cpu/armv7/mx6/soc.c index dd5aaa2..affbf7f 100644 --- a/arch/arm/cpu/armv7/mx6/soc.c +++ b/arch/arm/cpu/armv7/mx6/soc.c @@ -240,6 +240,18 @@ static void clear_mmdc_ch_mask(void) writel(0, &mxc_ccm->ccdr); } +#ifdef CONFIG_MX6SL +static void set_preclk_from_osc(void) +{ + struct mxc_ccm_reg *mxc_ccm = (struct mxc_ccm_reg *)CCM_BASE_ADDR; + u32 reg; + + reg = readl(&mxc_ccm->cscmr1); + reg |= MXC_CCM_CSCMR1_PER_CLK_SEL_MASK; + writel(reg, &mxc_ccm->cscmr1); +} +#endif + int arch_cpu_init(void) { init_aips(); @@ -255,6 +267,11 @@ int arch_cpu_init(void) if (mxc_get_clock(MXC_ARM_CLK) == 396000000) set_ahb_rate(132000000); + /* Set perclk to source from OSC 24MHz */ +#if defined(CONFIG_MX6SL) + set_preclk_from_osc(); +#endif + imx_set_wdog_powerdown(false); /* Disable PDE bit of WMCR register */ #ifdef CONFIG_APBH_DMA |