summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYe Li <ye.li@nxp.com>2016-12-07 11:37:05 +0800
committerYe Li <ye.li@nxp.com>2017-04-05 19:48:57 +0800
commitb4db09bc0fc96e7c7461afade6346e0700ad582f (patch)
tree0c914c8f4aedcf069e974b4c60ef8aff7c9d38bb
parentd78d25cfb4cf64507e5839e525ce82e0897a609c (diff)
downloadu-boot-imx-b4db09bc0fc96e7c7461afade6346e0700ad582f.zip
u-boot-imx-b4db09bc0fc96e7c7461afade6346e0700ad582f.tar.gz
u-boot-imx-b4db09bc0fc96e7c7461afade6346e0700ad582f.tar.bz2
MLK-13586-2 mx7d_arm2/sabresd: Update ddr3 script to V2.0 for Bank interleave
To improve the performance, enable the bank interleave for DDR3. Update the DDR3 settings to new script IMX7D_DDR3_533MHz_1GB_32bit_V2.0.ds Changes: 1. Enable bank interleave 2. Improve the drive strength for non-TO1.1 chips. 3. Updates ZQ_CON0 settings. 4. For 19x19 DDR3 ARM2 and 12x12 DDR3 ARM2, they are using old version scripts which were not upgrade with SABRESD script. According to DDR owner suggestion, to use same version script for all of them. File: http://compass.freescale.net/livelink/livelink?func=ll&objid=233861153&objAction=browse&sort=name&viewType=1 Test: Passed stress test on one TO1.2 SABRESD, one TO1.1 SABRESD and one TO1.0 SABRESD. Passed stress test on one 12x12 ddr3 ARM2. Signed-off-by: Ye Li <ye.li@nxp.com> (cherry picked from commit 62e73b45c53e3302d869c373da72699199b90648)
-rw-r--r--board/freescale/mx7d_12x12_ddr3_arm2/imximage.cfg39
-rw-r--r--board/freescale/mx7d_12x12_ddr3_arm2/imximage_TO_1_1.cfg37
-rw-r--r--board/freescale/mx7d_12x12_ddr3_arm2/plugin.S42
-rw-r--r--board/freescale/mx7d_19x19_ddr3_arm2/imximage.cfg38
-rw-r--r--board/freescale/mx7d_19x19_ddr3_arm2/imximage_TO_1_1.cfg36
-rw-r--r--board/freescale/mx7d_19x19_ddr3_arm2/plugin.S42
-rw-r--r--board/freescale/mx7dsabresd/imximage.cfg10
-rw-r--r--board/freescale/mx7dsabresd/imximage_TO_1_1.cfg8
-rw-r--r--board/freescale/mx7dsabresd/plugin.S12
9 files changed, 155 insertions, 109 deletions
diff --git a/board/freescale/mx7d_12x12_ddr3_arm2/imximage.cfg b/board/freescale/mx7d_12x12_ddr3_arm2/imximage.cfg
index 0c70d39..c5c8fc9 100644
--- a/board/freescale/mx7d_12x12_ddr3_arm2/imximage.cfg
+++ b/board/freescale/mx7d_12x12_ddr3_arm2/imximage.cfg
@@ -46,41 +46,47 @@ CSF CONFIG_CSF_SIZE
*/
DATA 4 0x30340004 0x4F400005
+/* Clear then set bit30 to ensure exit from DDR retention */
+DATA 4 0x30360388 0x40000000
+DATA 4 0x30360384 0x40000000
DATA 4 0x30391000 0x00000002
-DATA 4 0x307a0000 0x03040001
+DATA 4 0x307a0000 0x01040001
DATA 4 0x307a01a0 0x80400003
DATA 4 0x307a01a4 0x00100020
DATA 4 0x307a01a8 0x80100004
-DATA 4 0x307a0064 0x0040005e
+DATA 4 0x307a0064 0x00400046
DATA 4 0x307a0490 0x00000001
-DATA 4 0x307a00d0 0x00020001
-DATA 4 0x307a00d4 0x00010000
+DATA 4 0x307a00d0 0x00020083
+DATA 4 0x307a00d4 0x00690000
DATA 4 0x307a00dc 0x09300004
DATA 4 0x307a00e0 0x04080000
-DATA 4 0x307a00e4 0x00090004
+DATA 4 0x307a00e4 0x00100004
DATA 4 0x307a00f4 0x0000033f
-DATA 4 0x307a0100 0x0908120a
-DATA 4 0x307a0104 0x0002020e
+DATA 4 0x307a0100 0x09081109
+DATA 4 0x307a0104 0x0007020d
DATA 4 0x307a0108 0x03040407
DATA 4 0x307a010c 0x00002006
-DATA 4 0x307a0110 0x04020204
+DATA 4 0x307a0110 0x04020205
DATA 4 0x307a0114 0x03030202
-DATA 4 0x307a0120 0x03030803
+DATA 4 0x307a0120 0x00000803
DATA 4 0x307a0180 0x00800020
+DATA 4 0x307a0184 0x02000100
DATA 4 0x307a0190 0x02098204
DATA 4 0x307a0194 0x00030303
DATA 4 0x307a0200 0x00000016
-DATA 4 0x307a0204 0x00171717
-DATA 4 0x307a0214 0x04040404
-DATA 4 0x307a0218 0x00040404
-DATA 4 0x307a0240 0x06000601
-DATA 4 0x307a0244 0x00001323
+DATA 4 0x307a0204 0x00080808
+DATA 4 0x307a0210 0x00000f0f
+DATA 4 0x307a0214 0x07070707
+DATA 4 0x307a0218 0x0f070707
+DATA 4 0x307a0240 0x06000604
+DATA 4 0x307a0244 0x00000001
DATA 4 0x30391000 0x00000000
DATA 4 0x30790000 0x17420f40
DATA 4 0x30790004 0x10210100
DATA 4 0x30790010 0x00060807
-DATA 4 0x3079009c 0x00000d6e
+DATA 4 0x307900b0 0x1010007e
+DATA 4 0x3079009c 0x00000b24
DATA 4 0x30790020 0x08080808
DATA 4 0x30790030 0x08080808
DATA 4 0x30790050 0x01000010
@@ -92,13 +98,14 @@ DATA 4 0x307900c0 0x0e447306
CHECK_BITS_SET 4 0x307900c4 0x1
-DATA 4 0x307900c0 0x0e447304
DATA 4 0x307900c0 0x0e407304
+
DATA 4 0x30384130 0x00000000
DATA 4 0x30340020 0x00000178
DATA 4 0x30384130 0x00000002
DATA 4 0x30790018 0x0000000f
CHECK_BITS_SET 4 0x307a0004 0x1
+
#endif
diff --git a/board/freescale/mx7d_12x12_ddr3_arm2/imximage_TO_1_1.cfg b/board/freescale/mx7d_12x12_ddr3_arm2/imximage_TO_1_1.cfg
index 62bb99d..766b9ca 100644
--- a/board/freescale/mx7d_12x12_ddr3_arm2/imximage_TO_1_1.cfg
+++ b/board/freescale/mx7d_12x12_ddr3_arm2/imximage_TO_1_1.cfg
@@ -52,40 +52,46 @@ CHECK_BITS_SET 4 0x30360070 0x80000000
DATA 4 0x30389880 0x1
DATA 4 0x30340004 0x4F400005
+/* Clear then set bit30 to ensure exit from DDR retention */
+DATA 4 0x30360388 0x40000000
+DATA 4 0x30360384 0x40000000
DATA 4 0x30391000 0x00000002
-DATA 4 0x307a0000 0x03040001
+DATA 4 0x307a0000 0x01040001
DATA 4 0x307a01a0 0x80400003
DATA 4 0x307a01a4 0x00100020
DATA 4 0x307a01a8 0x80100004
-DATA 4 0x307a0064 0x0040005e
+DATA 4 0x307a0064 0x00400046
DATA 4 0x307a0490 0x00000001
-DATA 4 0x307a00d0 0x00020001
-DATA 4 0x307a00d4 0x00010000
+DATA 4 0x307a00d0 0x00020083
+DATA 4 0x307a00d4 0x00690000
DATA 4 0x307a00dc 0x09300004
DATA 4 0x307a00e0 0x04080000
-DATA 4 0x307a00e4 0x00090004
+DATA 4 0x307a00e4 0x00100004
DATA 4 0x307a00f4 0x0000033f
-DATA 4 0x307a0100 0x0908120a
-DATA 4 0x307a0104 0x0002020e
+DATA 4 0x307a0100 0x09081109
+DATA 4 0x307a0104 0x0007020d
DATA 4 0x307a0108 0x03040407
DATA 4 0x307a010c 0x00002006
-DATA 4 0x307a0110 0x04020204
+DATA 4 0x307a0110 0x04020205
DATA 4 0x307a0114 0x03030202
-DATA 4 0x307a0120 0x03030803
+DATA 4 0x307a0120 0x00000803
DATA 4 0x307a0180 0x00800020
+DATA 4 0x307a0184 0x02000100
DATA 4 0x307a0190 0x02098204
DATA 4 0x307a0194 0x00030303
DATA 4 0x307a0200 0x00000016
-DATA 4 0x307a0204 0x00171717
-DATA 4 0x307a0214 0x04040404
-DATA 4 0x307a0218 0x00040404
-DATA 4 0x307a0240 0x06000601
-DATA 4 0x307a0244 0x00001323
+DATA 4 0x307a0204 0x00080808
+DATA 4 0x307a0210 0x00000f0f
+DATA 4 0x307a0214 0x07070707
+DATA 4 0x307a0218 0x0f070707
+DATA 4 0x307a0240 0x06000604
+DATA 4 0x307a0244 0x00000001
DATA 4 0x30391000 0x00000000
DATA 4 0x30790000 0x17420f40
DATA 4 0x30790004 0x10210100
DATA 4 0x30790010 0x00060807
+DATA 4 0x307900b0 0x1010007e
DATA 4 0x3079009c 0x00000dee
DATA 4 0x3079007c 0x18181818
DATA 4 0x30790080 0x18181818
@@ -103,13 +109,14 @@ DATA 4 0x307900c0 0x0e447306
CHECK_BITS_SET 4 0x307900c4 0x1
-DATA 4 0x307900c0 0x0e447304
DATA 4 0x307900c0 0x0e407304
+
DATA 4 0x30384130 0x00000000
DATA 4 0x30340020 0x00000178
DATA 4 0x30384130 0x00000002
DATA 4 0x30790018 0x0000000f
CHECK_BITS_SET 4 0x307a0004 0x1
+
#endif
diff --git a/board/freescale/mx7d_12x12_ddr3_arm2/plugin.S b/board/freescale/mx7d_12x12_ddr3_arm2/plugin.S
index 1bc05dc..3950ae5 100644
--- a/board/freescale/mx7d_12x12_ddr3_arm2/plugin.S
+++ b/board/freescale/mx7d_12x12_ddr3_arm2/plugin.S
@@ -31,7 +31,7 @@
NO_DELAY:
/*TO 1.0*/
- ldr r1, =0x00000d6e
+ ldr r1, =0x00000b24
str r1, [r0, #0x9c]
TUNE_END:
@@ -79,13 +79,19 @@ FREQ_DEFAULT_533:
ldr r1, =0x4f400005
str r1, [r0, #0x4]
+ /* clear/set bit30 of SNVS_MISC_CTRL to ensure exit from ddr retention */
+ ldr r0, =ANATOP_BASE_ADDR
+ ldr r1, =(0x1 << 30)
+ str r1, [r0, #0x388]
+ str r1, [r0, #0x384]
+
ldr r0, =SRC_BASE_ADDR
ldr r1, =0x2
ldr r2, =0x1000
str r1, [r0, r2]
ldr r0, =DDRC_IPS_BASE_ADDR
- ldr r1, =0x03040001
+ ldr r1, =0x01040001
str r1, [r0]
ldr r1, =0x80400003
str r1, [r0, #0x1a0]
@@ -93,38 +99,40 @@ FREQ_DEFAULT_533:
str r1, [r0, #0x1a4]
ldr r1, =0x80100004
str r1, [r0, #0x1a8]
- ldr r1, =0x0040005e
+ ldr r1, =0x00400046
str r1, [r0, #0x64]
ldr r1, =0x1
str r1, [r0, #0x490]
ldr r1, =0x00020001
str r1, [r0, #0xd0]
- ldr r1, =0x00010000
+ ldr r1, =0x00690000
str r1, [r0, #0xd4]
ldr r1, =0x09300004
str r1, [r0, #0xdc]
ldr r1, =0x04080000
str r1, [r0, #0xe0]
- ldr r1, =0x00090004
+ ldr r1, =0x00100004
str r1, [r0, #0xe4]
ldr r1, =0x33f
str r1, [r0, #0xf4]
- ldr r1, =0x0908120a
+ ldr r1, =0x09081109
str r1, [r0, #0x100]
- ldr r1, =0x0002020e
+ ldr r1, =0x0007020d
str r1, [r0, #0x104]
ldr r1, =0x03040407
str r1, [r0, #0x108]
ldr r1, =0x00002006
str r1, [r0, #0x10c]
- ldr r1, =0x04020204
+ ldr r1, =0x04020205
str r1, [r0, #0x110]
ldr r1, =0x03030202
str r1, [r0, #0x114]
- ldr r1, =0x03030803
+ ldr r1, =0x00000803
str r1, [r0, #0x120]
ldr r1, =0x00800020
str r1, [r0, #0x180]
+ ldr r1, =0x02000100
+ str r1, [r0, #0x184]
ldr r1, =0x02098204
str r1, [r0, #0x190]
ldr r1, =0x00030303
@@ -132,16 +140,18 @@ FREQ_DEFAULT_533:
ldr r1, =0x00000016
str r1, [r0, #0x200]
- ldr r1, =0x00171717
+ ldr r1, =0x00080808
str r1, [r0, #0x204]
- ldr r1, =0x04040404
+ ldr r1, =0x00000f0f
+ str r1, [r0, #0x210]
+ ldr r1, =0x07070707
str r1, [r0, #0x214]
- ldr r1, =0x00040404
+ ldr r1, =0x0f070707
str r1, [r0, #0x218]
- ldr r1, =0x06000601
+ ldr r1, =0x06000604
str r1, [r0, #0x240]
- ldr r1, =0x00001323
+ ldr r1, =0x00000001
str r1, [r0, #0x244]
ldr r0, =SRC_BASE_ADDR
@@ -156,6 +166,8 @@ FREQ_DEFAULT_533:
str r1, [r0, #0x4]
ldr r1, =0x00060807
str r1, [r0, #0x10]
+ ldr r1, =0x1010007e
+ str r1, [r0, #0xb0]
imx7d_ddrphy_latency_setting
ldr r1, =0x08080808
str r1, [r0, #0x20]
@@ -176,8 +188,6 @@ wait_zq:
tst r1, #0x1
beq wait_zq
- ldr r1, =0x0e447304
- str r1, [r0, #0xc0]
ldr r1, =0x0e407304
str r1, [r0, #0xc0]
diff --git a/board/freescale/mx7d_19x19_ddr3_arm2/imximage.cfg b/board/freescale/mx7d_19x19_ddr3_arm2/imximage.cfg
index 2d6c025..1cb8646 100644
--- a/board/freescale/mx7d_19x19_ddr3_arm2/imximage.cfg
+++ b/board/freescale/mx7d_19x19_ddr3_arm2/imximage.cfg
@@ -51,41 +51,47 @@ CSF CONFIG_CSF_SIZE
*/
DATA 4 0x30340004 0x4F400005
+/* Clear then set bit30 to ensure exit from DDR retention */
+DATA 4 0x30360388 0x40000000
+DATA 4 0x30360384 0x40000000
DATA 4 0x30391000 0x00000002
-DATA 4 0x307a0000 0x03040001
+DATA 4 0x307a0000 0x01040001
DATA 4 0x307a01a0 0x80400003
DATA 4 0x307a01a4 0x00100020
DATA 4 0x307a01a8 0x80100004
-DATA 4 0x307a0064 0x0040005e
+DATA 4 0x307a0064 0x00400046
DATA 4 0x307a0490 0x00000001
-DATA 4 0x307a00d0 0x00020001
-DATA 4 0x307a00d4 0x00010000
+DATA 4 0x307a00d0 0x00020083
+DATA 4 0x307a00d4 0x00690000
DATA 4 0x307a00dc 0x09300004
DATA 4 0x307a00e0 0x04080000
-DATA 4 0x307a00e4 0x00090004
+DATA 4 0x307a00e4 0x00100004
DATA 4 0x307a00f4 0x0000033f
-DATA 4 0x307a0100 0x0908120a
-DATA 4 0x307a0104 0x0002020e
+DATA 4 0x307a0100 0x09081109
+DATA 4 0x307a0104 0x0007020d
DATA 4 0x307a0108 0x03040407
DATA 4 0x307a010c 0x00002006
-DATA 4 0x307a0110 0x04020204
+DATA 4 0x307a0110 0x04020205
DATA 4 0x307a0114 0x03030202
-DATA 4 0x307a0120 0x03030803
+DATA 4 0x307a0120 0x00000803
DATA 4 0x307a0180 0x00800020
+DATA 4 0x307a0184 0x02000100
DATA 4 0x307a0190 0x02098204
DATA 4 0x307a0194 0x00030303
DATA 4 0x307a0200 0x00000016
-DATA 4 0x307a0204 0x00171717
-DATA 4 0x307a0214 0x04040404
-DATA 4 0x307a0218 0x00040404
-DATA 4 0x307a0240 0x06000601
-DATA 4 0x307a0244 0x00001323
+DATA 4 0x307a0204 0x00080808
+DATA 4 0x307a0210 0x00000f0f
+DATA 4 0x307a0214 0x07070707
+DATA 4 0x307a0218 0x0f070707
+DATA 4 0x307a0240 0x06000604
+DATA 4 0x307a0244 0x00000001
DATA 4 0x30391000 0x00000000
DATA 4 0x30790000 0x17420f40
DATA 4 0x30790004 0x10210100
DATA 4 0x30790010 0x00060807
-DATA 4 0x3079009c 0x00000d6e
+DATA 4 0x307900b0 0x1010007e
+DATA 4 0x3079009c 0x00000b24
DATA 4 0x30790020 0x08080808
DATA 4 0x30790030 0x08080808
DATA 4 0x30790050 0x01000010
@@ -97,7 +103,6 @@ DATA 4 0x307900c0 0x0e447306
CHECK_BITS_SET 4 0x307900c4 0x1
-DATA 4 0x307900c0 0x0e447304
DATA 4 0x307900c0 0x0e407304
@@ -107,4 +112,5 @@ DATA 4 0x30384130 0x00000002
DATA 4 0x30790018 0x0000000f
CHECK_BITS_SET 4 0x307a0004 0x1
+
#endif
diff --git a/board/freescale/mx7d_19x19_ddr3_arm2/imximage_TO_1_1.cfg b/board/freescale/mx7d_19x19_ddr3_arm2/imximage_TO_1_1.cfg
index 29007f5..a27a0b9 100644
--- a/board/freescale/mx7d_19x19_ddr3_arm2/imximage_TO_1_1.cfg
+++ b/board/freescale/mx7d_19x19_ddr3_arm2/imximage_TO_1_1.cfg
@@ -57,40 +57,46 @@ CHECK_BITS_SET 4 0x30360070 0x80000000
DATA 4 0x30389880 0x1
DATA 4 0x30340004 0x4F400005
+/* Clear then set bit30 to ensure exit from DDR retention */
+DATA 4 0x30360388 0x40000000
+DATA 4 0x30360384 0x40000000
DATA 4 0x30391000 0x00000002
-DATA 4 0x307a0000 0x03040001
+DATA 4 0x307a0000 0x01040001
DATA 4 0x307a01a0 0x80400003
DATA 4 0x307a01a4 0x00100020
DATA 4 0x307a01a8 0x80100004
-DATA 4 0x307a0064 0x0040005e
+DATA 4 0x307a0064 0x00400046
DATA 4 0x307a0490 0x00000001
-DATA 4 0x307a00d0 0x00020001
-DATA 4 0x307a00d4 0x00010000
+DATA 4 0x307a00d0 0x00020083
+DATA 4 0x307a00d4 0x00690000
DATA 4 0x307a00dc 0x09300004
DATA 4 0x307a00e0 0x04080000
-DATA 4 0x307a00e4 0x00090004
+DATA 4 0x307a00e4 0x00100004
DATA 4 0x307a00f4 0x0000033f
-DATA 4 0x307a0100 0x0908120a
-DATA 4 0x307a0104 0x0002020e
+DATA 4 0x307a0100 0x09081109
+DATA 4 0x307a0104 0x0007020d
DATA 4 0x307a0108 0x03040407
DATA 4 0x307a010c 0x00002006
-DATA 4 0x307a0110 0x04020204
+DATA 4 0x307a0110 0x04020205
DATA 4 0x307a0114 0x03030202
-DATA 4 0x307a0120 0x03030803
+DATA 4 0x307a0120 0x00000803
DATA 4 0x307a0180 0x00800020
+DATA 4 0x307a0184 0x02000100
DATA 4 0x307a0190 0x02098204
DATA 4 0x307a0194 0x00030303
DATA 4 0x307a0200 0x00000016
-DATA 4 0x307a0204 0x00171717
-DATA 4 0x307a0214 0x04040404
-DATA 4 0x307a0218 0x00040404
-DATA 4 0x307a0240 0x06000601
-DATA 4 0x307a0244 0x00001323
+DATA 4 0x307a0204 0x00080808
+DATA 4 0x307a0210 0x00000f0f
+DATA 4 0x307a0214 0x07070707
+DATA 4 0x307a0218 0x0f070707
+DATA 4 0x307a0240 0x06000604
+DATA 4 0x307a0244 0x00000001
DATA 4 0x30391000 0x00000000
DATA 4 0x30790000 0x17420f40
DATA 4 0x30790004 0x10210100
DATA 4 0x30790010 0x00060807
+DATA 4 0x307900b0 0x1010007e
DATA 4 0x3079009c 0x00000dee
DATA 4 0x3079007c 0x18181818
DATA 4 0x30790080 0x18181818
@@ -108,7 +114,6 @@ DATA 4 0x307900c0 0x0e447306
CHECK_BITS_SET 4 0x307900c4 0x1
-DATA 4 0x307900c0 0x0e447304
DATA 4 0x307900c0 0x0e407304
@@ -118,4 +123,5 @@ DATA 4 0x30384130 0x00000002
DATA 4 0x30790018 0x0000000f
CHECK_BITS_SET 4 0x307a0004 0x1
+
#endif
diff --git a/board/freescale/mx7d_19x19_ddr3_arm2/plugin.S b/board/freescale/mx7d_19x19_ddr3_arm2/plugin.S
index 39d53d6..c2ca47a 100644
--- a/board/freescale/mx7d_19x19_ddr3_arm2/plugin.S
+++ b/board/freescale/mx7d_19x19_ddr3_arm2/plugin.S
@@ -31,7 +31,7 @@
NO_DELAY:
/*TO 1.0*/
- ldr r1, =0x00000d6e
+ ldr r1, =0x00000b24
str r1, [r0, #0x9c]
TUNE_END:
@@ -79,13 +79,19 @@ FREQ_DEFAULT_533:
ldr r1, =0x4f400005
str r1, [r0, #0x4]
+ /* clear/set bit30 of SNVS_MISC_CTRL to ensure exit from ddr retention */
+ ldr r0, =ANATOP_BASE_ADDR
+ ldr r1, =(0x1 << 30)
+ str r1, [r0, #0x388]
+ str r1, [r0, #0x384]
+
ldr r0, =SRC_BASE_ADDR
ldr r1, =0x2
ldr r2, =0x1000
str r1, [r0, r2]
ldr r0, =DDRC_IPS_BASE_ADDR
- ldr r1, =0x03040001
+ ldr r1, =0x01040001
str r1, [r0]
ldr r1, =0x80400003
str r1, [r0, #0x1a0]
@@ -93,38 +99,40 @@ FREQ_DEFAULT_533:
str r1, [r0, #0x1a4]
ldr r1, =0x80100004
str r1, [r0, #0x1a8]
- ldr r1, =0x0040005e
+ ldr r1, =0x00400046
str r1, [r0, #0x64]
ldr r1, =0x1
str r1, [r0, #0x490]
ldr r1, =0x00020001
str r1, [r0, #0xd0]
- ldr r1, =0x00010000
+ ldr r1, =0x00690000
str r1, [r0, #0xd4]
ldr r1, =0x09300004
str r1, [r0, #0xdc]
ldr r1, =0x04080000
str r1, [r0, #0xe0]
- ldr r1, =0x00090004
+ ldr r1, =0x00100004
str r1, [r0, #0xe4]
ldr r1, =0x33f
str r1, [r0, #0xf4]
- ldr r1, =0x0908120a
+ ldr r1, =0x09081109
str r1, [r0, #0x100]
- ldr r1, =0x0002020e
+ ldr r1, =0x0007020d
str r1, [r0, #0x104]
ldr r1, =0x03040407
str r1, [r0, #0x108]
ldr r1, =0x00002006
str r1, [r0, #0x10c]
- ldr r1, =0x04020204
+ ldr r1, =0x04020205
str r1, [r0, #0x110]
ldr r1, =0x03030202
str r1, [r0, #0x114]
- ldr r1, =0x03030803
+ ldr r1, =0x00000803
str r1, [r0, #0x120]
ldr r1, =0x00800020
str r1, [r0, #0x180]
+ ldr r1, =0x02000100
+ str r1, [r0, #0x184]
ldr r1, =0x02098204
str r1, [r0, #0x190]
ldr r1, =0x00030303
@@ -132,16 +140,18 @@ FREQ_DEFAULT_533:
ldr r1, =0x00000016
str r1, [r0, #0x200]
- ldr r1, =0x00171717
+ ldr r1, =0x00080808
str r1, [r0, #0x204]
- ldr r1, =0x04040404
+ ldr r1, =0x00000f0f
+ str r1, [r0, #0x210]
+ ldr r1, =0x07070707
str r1, [r0, #0x214]
- ldr r1, =0x00040404
+ ldr r1, =0x0f070707
str r1, [r0, #0x218]
- ldr r1, =0x06000601
+ ldr r1, =0x06000604
str r1, [r0, #0x240]
- ldr r1, =0x00001323
+ ldr r1, =0x00000001
str r1, [r0, #0x244]
ldr r0, =SRC_BASE_ADDR
@@ -156,6 +166,8 @@ FREQ_DEFAULT_533:
str r1, [r0, #0x4]
ldr r1, =0x00060807
str r1, [r0, #0x10]
+ ldr r1, =0x1010007e
+ str r1, [r0, #0xb0]
imx7d_ddrphy_latency_setting
ldr r1, =0x08080808
str r1, [r0, #0x20]
@@ -176,8 +188,6 @@ wait_zq:
tst r1, #0x1
beq wait_zq
- ldr r1, =0x0e447304
- str r1, [r0, #0xc0]
ldr r1, =0x0e407304
str r1, [r0, #0xc0]
diff --git a/board/freescale/mx7dsabresd/imximage.cfg b/board/freescale/mx7dsabresd/imximage.cfg
index 4dca2d3..a982eac 100644
--- a/board/freescale/mx7dsabresd/imximage.cfg
+++ b/board/freescale/mx7dsabresd/imximage.cfg
@@ -76,9 +76,10 @@ DATA 4 0x307a0184 0x02000100
DATA 4 0x307a0190 0x02098204
DATA 4 0x307a0194 0x00030303
DATA 4 0x307a0200 0x00000016
-DATA 4 0x307a0204 0x00171717
-DATA 4 0x307a0214 0x04040404
-DATA 4 0x307a0218 0x0f040404
+DATA 4 0x307a0204 0x00080808
+DATA 4 0x307a0210 0x00000f0f
+DATA 4 0x307a0214 0x07070707
+DATA 4 0x307a0218 0x0f070707
DATA 4 0x307a0240 0x06000604
DATA 4 0x307a0244 0x00000001
DATA 4 0x30391000 0x00000000
@@ -86,7 +87,7 @@ DATA 4 0x30790000 0x17420f40
DATA 4 0x30790004 0x10210100
DATA 4 0x30790010 0x00060807
DATA 4 0x307900b0 0x1010007e
-DATA 4 0x3079009c 0x00000d6e
+DATA 4 0x3079009c 0x00000b24
DATA 4 0x30790020 0x08080808
DATA 4 0x30790030 0x08080808
DATA 4 0x30790050 0x01000010
@@ -98,7 +99,6 @@ DATA 4 0x307900c0 0x0e447306
CHECK_BITS_SET 4 0x307900c4 0x1
-DATA 4 0x307900c0 0x0e447304
DATA 4 0x307900c0 0x0e407304
diff --git a/board/freescale/mx7dsabresd/imximage_TO_1_1.cfg b/board/freescale/mx7dsabresd/imximage_TO_1_1.cfg
index 66cc99c..48413de 100644
--- a/board/freescale/mx7dsabresd/imximage_TO_1_1.cfg
+++ b/board/freescale/mx7dsabresd/imximage_TO_1_1.cfg
@@ -81,9 +81,10 @@ DATA 4 0x307a0184 0x02000100
DATA 4 0x307a0190 0x02098204
DATA 4 0x307a0194 0x00030303
DATA 4 0x307a0200 0x00000016
-DATA 4 0x307a0204 0x00171717
-DATA 4 0x307a0214 0x04040404
-DATA 4 0x307a0218 0x0f040404
+DATA 4 0x307a0204 0x00080808
+DATA 4 0x307a0210 0x00000f0f
+DATA 4 0x307a0214 0x07070707
+DATA 4 0x307a0218 0x0f070707
DATA 4 0x307a0240 0x06000604
DATA 4 0x307a0244 0x00000001
DATA 4 0x30391000 0x00000000
@@ -108,7 +109,6 @@ DATA 4 0x307900c0 0x0e447306
CHECK_BITS_SET 4 0x307900c4 0x1
-DATA 4 0x307900c0 0x0e447304
DATA 4 0x307900c0 0x0e407304
diff --git a/board/freescale/mx7dsabresd/plugin.S b/board/freescale/mx7dsabresd/plugin.S
index 2dce883..75033f7 100644
--- a/board/freescale/mx7dsabresd/plugin.S
+++ b/board/freescale/mx7dsabresd/plugin.S
@@ -31,7 +31,7 @@
NO_DELAY:
/*TO 1.0*/
- ldr r1, =0x00000d6e
+ ldr r1, =0x00000b24
str r1, [r0, #0x9c]
TUNE_END:
@@ -140,11 +140,13 @@ FREQ_DEFAULT_533:
ldr r1, =0x00000016
str r1, [r0, #0x200]
- ldr r1, =0x00171717
+ ldr r1, =0x00080808
str r1, [r0, #0x204]
- ldr r1, =0x04040404
+ ldr r1, =0x00000f0f
+ str r1, [r0, #0x210]
+ ldr r1, =0x07070707
str r1, [r0, #0x214]
- ldr r1, =0x0f040404
+ ldr r1, =0x0f070707
str r1, [r0, #0x218]
ldr r1, =0x06000604
@@ -186,8 +188,6 @@ wait_zq:
tst r1, #0x1
beq wait_zq
- ldr r1, =0x0e447304
- str r1, [r0, #0xc0]
ldr r1, =0x0e407304
str r1, [r0, #0xc0]