DDR2 B2升级为DDR2 B3后,导致usbboot不能启动u-boot
打开后memtest宏后,打印出来:memtest read ERROR
[[PATCH]pandaboard: 0/1] Modification of Elpida DDR2 RAMfor Pandaboard-ES Rev B3
http://u-boot.10912.n7.nabble.com/PATCH-pandaboard-0-1-Modification-of-Elpida-DDR2-RAM-for-Pandaboard-ES-Rev-B3-td166135.html
Pandaboard-ES Rev B3 (老板 搜索关键词)
Index: board_panda.c
===================================================================
--- board_panda.c (版本 1)
+++ board_panda.c (版本 2)
@@ -255,6 +255,19 @@
.mr2 =0x4
};
+static struct ddr_regs elpida2G_400mhz_1cs = {
+ .tim1 =0x10eb0662,
+ .tim2 =0x20370dd2,
+ .tim3 =0x00b1c33f,
+ .phy_ctrl_1 = 0x049ff418,
+ .ref_ctrl = 0x00000618,
+ .config_init =0x80800eb2,
+ .config_final =0x80801ab2,
+ .zq_config = 0x500b3215,
+ .mr1 =0x83,
+ .mr2 =0x4
+};
+
void board_ddr_init(void)
{
@@ -264,10 +277,10 @@
if (get_omap_rev() >=OMAP_4460_ES1_DOT_0) {
writel(0x80640300,MA_BASE + DMM_LISA_MAP_0);
- elpida2G_400mhz_2cs.phy_ctrl_1 =0x449FF408;
+ elpida2G_400mhz_2cs.phy_ctrl_1 =0x049ffff5;//0x449FF408;
}
- omap4_ddr_init(&elpida2G_400mhz_2cs,
- &elpida2G_400mhz_2cs);
+ omap4_ddr_init(&elpida2G_400mhz_1cs,
+ &elpida2G_400mhz_1cs);
}
Index: Makefile
===================================================================
--- Makefile (版本 1)
+++ Makefile (版本 2)
@@ -29,7 +29,7 @@
-include local.mk
-TOOLCHAIN ?= arm-eabi-
+TOOLCHAIN ?= arm-none-linux-gnueabi-
BOARD ?= panda
遇到此种问题,我当时想看寄存器,老板告诉我要先看高版本中有没有DDR2B3成功的,直接拷贝过来,我当时直接是没思路。。。。以后要改变思路,不能像高单片机一样想linux了