summaryrefslogtreecommitdiff
path: root/board/freescale/mx7d_19x19_lpddr3_arm2/plugin.S
diff options
context:
space:
mode:
authorYe Li <ye.li@nxp.com>2016-12-01 13:39:41 +0800
committerYe Li <ye.li@nxp.com>2017-04-05 19:48:57 +0800
commitd78d25cfb4cf64507e5839e525ce82e0897a609c (patch)
treeb28a3e5b2c1ebf22c3ee0b1a14bc864efc18d09f /board/freescale/mx7d_19x19_lpddr3_arm2/plugin.S
parentdc2318b60ba7be0b313580e0e8f6556d09a962fa (diff)
downloadu-boot-imx-d78d25cfb4cf64507e5839e525ce82e0897a609c.zip
u-boot-imx-d78d25cfb4cf64507e5839e525ce82e0897a609c.tar.gz
u-boot-imx-d78d25cfb4cf64507e5839e525ce82e0897a609c.tar.bz2
MLK-13586-1 mx7d_arm2: Update lpddr3 script to V2.0 for Bank interleave
To improve the performance, enable the bank interleave for LPDDR3. Update the LPDDR3 settings to new script IMX7D_LPDDR3_533MHz_2GB_32bit_V2.0.ds5. Changes: 1. Enable bank interleave 2. Improve the drive strength for non-TO1.1 chips. 3. Updates ZQ_CON0 settings. 4. Change to 0 for reserved bits. File: http://compass.freescale.net/livelink/livelink?func=ll&objid=233861153&objAction=browse&sort=name&viewType=1 Test: Passed stress test on one 19x19 lpddr3 arm2 and one 12x12 lpddr3 arm2. Passed LPSR test on one 12x12 lpddr3 arm2. Signed-off-by: Ye Li <ye.li@nxp.com> (cherry picked from commit 9a4fa3f8d2762791a76fd90e83feec8c8c9235b0)
Diffstat (limited to 'board/freescale/mx7d_19x19_lpddr3_arm2/plugin.S')
-rw-r--r--board/freescale/mx7d_19x19_lpddr3_arm2/plugin.S31
1 files changed, 20 insertions, 11 deletions
diff --git a/board/freescale/mx7d_19x19_lpddr3_arm2/plugin.S b/board/freescale/mx7d_19x19_lpddr3_arm2/plugin.S
index 319237a..85db174 100644
--- a/board/freescale/mx7d_19x19_lpddr3_arm2/plugin.S
+++ b/board/freescale/mx7d_19x19_lpddr3_arm2/plugin.S
@@ -122,16 +122,16 @@ TUNE_END:
ldr r1, =0x00000016
str r1, [r0, #0x200]
- ldr r1, =0x00171717
+ ldr r1, =0x00090909
str r1, [r0, #0x204]
ldr r1, =0x00000f00
str r1, [r0, #0x210]
- ldr r1, =0x05050505
+ ldr r1, =0x08080808
str r1, [r0, #0x214]
- ldr r1, =0x0f0f0505
+ ldr r1, =0x0f0f0808
str r1, [r0, #0x218]
- ldr r1, =0x06000601
+ ldr r1, =0x06000600
str r1, [r0, #0x240]
mov r1, #0x0
str r1, [r0, #0x244]
@@ -155,9 +155,20 @@ TUNE_END:
str r1, [r0, #0xb0]
ldr r1, =0x01010000
str r1, [r0, #0x1c]
+
+ ldr r2, =ANATOP_BASE_ADDR
+ ldr r3, [r2, #0x800]
+ and r3, r3, #0xFF
+ cmp r3, #0x11
+ bne 1f
+
ldr r1, =0x0db60d6e
str r1, [r0, #0x9c]
-
+ b 2f
+1:
+ ldr r1, =0x00000b24
+ str r1, [r0, #0x9c]
+2:
ldr r1, =0x06060606
str r1, [r0, #0x30]
ldr r1, =0x0a0a0a0a
@@ -169,13 +180,11 @@ TUNE_END:
ldr r1, =0x0000000f
str r1, [r0, #0x18]
- ldr r1, =0x1e487304
- str r1, [r0, #0xc0]
- ldr r1, =0x1e487304
+ ldr r1, =0x0e487304
str r1, [r0, #0xc0]
- ldr r1, =0x1e487306
+ ldr r1, =0x0e4c7304
str r1, [r0, #0xc0]
- ldr r1, =0x1e4c7304
+ ldr r1, =0x0e4c7306
str r1, [r0, #0xc0]
wait_zq:
@@ -183,7 +192,7 @@ wait_zq:
tst r1, #0x1
beq wait_zq
- ldr r1, =0x1e487304
+ ldr r1, =0x0e487304
str r1, [r0, #0xc0]
ldr r0, =CCM_BASE_ADDR