diff options
author | Ye.Li <B37916@freescale.com> | 2015-03-30 16:03:13 +0800 |
---|---|---|
committer | Ye.Li <B37916@freescale.com> | 2015-04-08 10:25:29 +0800 |
commit | 7490062ff86e1132b95bf153091f28f7940c0cf9 (patch) | |
tree | 7828035e80bfa76c73216a40f217dbaed9c9100d | |
parent | d2fb113740b2c67958862503dda2a40191ab0899 (diff) | |
download | u-boot-imx-7490062ff86e1132b95bf153091f28f7940c0cf9.zip u-boot-imx-7490062ff86e1132b95bf153091f28f7940c0cf9.tar.gz u-boot-imx-7490062ff86e1132b95bf153091f28f7940c0cf9.tar.bz2 |
MLK-10504 imx: mx6dqarm2: Fix CCM setting for lpddr2 400Mhz support
Current uboot supports for running LPDDR2 at 400MHz on MX6Q ARM2 board,
but there is a problem in switching pre_periph_clk_sel to pll2_pfd2.
We cannot directly change the parent of pre_periph_clk_sel as this mux
is not a glitchless mux. We need to follow the correct procedure and wait
for the busy bits to clear before switching.
Change to follow the procedure:
1. Set periph_clk2 to OSC.
2. Switch the periph_clk to periph_clk2, checking the CCM_CDHIPR for periph_clk
, ahb_podf and axi_podf busy bits.
3. Setting the pre_periph_clk to PLL2 PFD 396M.
4. Switch the periph_clk back to pre_periph_clk and checking CCM_CDHIPR busy bits.
Signed-off-by: Ye.Li <B37916@freescale.com>
-rw-r--r-- | board/freescale/mx6qarm2/imximage.cfg | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/board/freescale/mx6qarm2/imximage.cfg b/board/freescale/mx6qarm2/imximage.cfg index 8fba8aa..24b2c2b 100644 --- a/board/freescale/mx6qarm2/imximage.cfg +++ b/board/freescale/mx6qarm2/imximage.cfg @@ -211,6 +211,12 @@ DATA 4, 0x020e001c, 0x007F007F #elif defined(CONFIG_MX6DQ_LPDDR2) /* DCD */ +DATA 4 0x020C4018 0x21324 +DATA 4 0x020C4014 0x2018D00 +CHECK_BITS_CLR 4 0x020C4048 0x3F +DATA 4 0x020C4018 0x61324 +DATA 4 0x020C4014 0x18D00 +CHECK_BITS_CLR 4 0x020C4048 0x3F DATA 4 0x020C4018 0x60324 DATA 4 0x020E05a8 0x00003038 |