summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnson Huang <Anson.Huang@nxp.com>2016-05-08 22:29:57 +0800
committerAnson Huang <Anson.Huang@nxp.com>2016-05-09 18:23:26 +0800
commit61e491dbabb76b1b01d6988cfc9e24445e9680b6 (patch)
tree13b2184a984f7b1c5909ca2ffa2d92eb49a2d827
parentefd941df167314c47d4746ce04c98f1691d9e103 (diff)
downloadu-boot-imx-61e491dbabb76b1b01d6988cfc9e24445e9680b6.zip
u-boot-imx-61e491dbabb76b1b01d6988cfc9e24445e9680b6.tar.gz
u-boot-imx-61e491dbabb76b1b01d6988cfc9e24445e9680b6.tar.bz2
MLK-12748-3 imx: adjust imx7d lpddr3 lpsr exit flow
On i.MX7D lpddr3, retention mode exit flow should restore more registers to make sure the ddr controller and ddr phy settings restored properly, otherwise, some of the boards can NOT pass memtester after retention mode exited. For LPSR mode, ddr resume flow is same as retention mode, just adjust it accordingly. Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
-rw-r--r--board/freescale/mx7d_12x12_lpddr3_arm2/plugin.S14
1 files changed, 13 insertions, 1 deletions
diff --git a/board/freescale/mx7d_12x12_lpddr3_arm2/plugin.S b/board/freescale/mx7d_12x12_lpddr3_arm2/plugin.S
index fbcd682..aaf65c2 100644
--- a/board/freescale/mx7d_12x12_lpddr3_arm2/plugin.S
+++ b/board/freescale/mx7d_12x12_lpddr3_arm2/plugin.S
@@ -151,7 +151,7 @@ TUNE_END:
str r7, [r3, r6]
ldr r6, =0x108
- ldr r7, =0x03060707
+ ldr r7, =0x03060708
str r7, [r3, r6]
ldr r6, =0x10c
@@ -174,6 +174,10 @@ TUNE_END:
ldr r7, =0x00000202
str r7, [r3, r6]
+ ldr r6, =0x120
+ ldr r7, =0x00000202
+ str r7, [r3, r6]
+
ldr r6, =0x180
ldr r7, =0x00600018
str r7, [r3, r6]
@@ -198,6 +202,10 @@ TUNE_END:
ldr r7, =0x00171717
str r7, [r3, r6]
+ ldr r6, =0x210
+ ldr r7, =0xF00
+ str r7, [r3, r6]
+
ldr r6, =0x214
ldr r7, =0x05050505
str r7, [r3, r6]
@@ -267,6 +275,10 @@ TUNE_END:
ldr r7, =0x0007080C
str r7, [r4, r6]
+ ldr r6, =0xb0
+ ldr r7, =0x1010007e
+ str r7, [r4, r6]
+
ldr r7, [r1, #0x800]
and r7, r7, #0xFF
cmp r7, #0x11