Hi sir,
We are using dm8127 custom board through the reference of DM8127-CSK evm module.
In the evm module DDR3 (MT41K256M16TW ) 2-chip selects & 4 modules used default.
in our custom board DDR3 (same IC) 1-Chip select & 2 module(Lower & Higher data) used.
While booting it is hanging in u-boot
below it is hang.
gc - clustnum: 72516, startsect: 74752
Size: 284349, got: 284349
Jumping to U-Boot
loaded - jumping to U-Boot...image entry point: 0x80800000
initcall: 80821e78
initcall: 80825004
U-Boot 2016.05 (Jan 18 2023 - 14:27:26 +0530)
initcall: 8080ba84
U-Boot code: 80800000 -> 8083BC80 BSS: -> 808709D0
initcall: 8080b8a8
initcall: 8080bacc
I2C: ready
initcall: 8080bab4
DRAM: initcall: 80800b60
initcall: 8080bd20
Monitor len: 000709D0
Ram size: 40000000
Ram top: C0000000
initcall: 8080b8d0
initcall: 8080ba2c
TLB table from bfff0000 to bfff4000
initcall: 8080bc4c
initcall: 8080b9e0
Reserving 450k for U-Boot at: bff7f000
initcall: 8080b9b4
Reserving 1152k for malloc() at: bfe5f000
initcall: 8080bbe8
Reserving 80 Bytes for Board Info at: bfe5efb0
initcall: 8080bc54
initcall: 8080b980
Reserving 184 Bytes for Global Data at: bfe5eef8
initcall: 8080b914
Reserving 12864 Bytes for FDT at: bfe5bcb8
initcall: 8080bc3c
initcall: 8080bd9c
initcall: 8080bcf8
initcall: 8080bc70
RAM Configuration:
Bank #0: 80000000 1 GiB
DRAM: 1 GiB
initcall: 8080b8f8
New Stack Pointer is: bfe5bc90
initcall: 8080bba4
initcall: 8080bb34
Relocation Offset is: 3f77f000
Relocating to bff7f000, new gd at bfe5eef8, sp at bfe5bc90
after this not booting any thing.
changes in u-boot:
1.dm8127.dts
memory {
device_type = "memory";
reg = <0x80000000 0x40000000>; /* 1 GB */
};
2.sys_proto.h
#ifdef CONFIG_OMAP_COMMON
#define TI_ARMV7_DRAM_ADDR_SPACE_START 0x80000000
#define TI_ARMV7_DRAM_ADDR_SPACE_END 0x9FFFFFFF
3.u-boot/board/ti/dm8127/evm.c
static const struct dmm_lisa_map_regs evm_lisa_map_regs = {
.dmm_lisa_map_0 = 0x80600100,
.dmm_lisa_map_1 = 0x80600100,
.dmm_lisa_map_2 = 0x0,
.dmm_lisa_map_3 = 0x0,
.is_ma_present = 0x1
};
void sdram_init(void)
{
config_dmm(&evm_lisa_map_regs);
#ifdef CONFIG_TI814X_EVM_DDR3
config_ddr(0, NULL, &evm_ddr3_phy0_data[0], &evm_ddr3_cctrl_data,
&evm_ddr3_emif0_regs, 0);
// config_ddr(1, NULL, &evm_ddr3_phy1_data[0], &evm_ddr3_cctrl_data,
// &evm_ddr3_emif1_regs, 1); //cispl
#else
config_ddr(0, NULL, &evm_ddr2_data, &evm_ddr2_cctrl_data,
&evm_ddr2_emif0_regs, 0);
// config_ddr(0, NULL, &evm_ddr2_data, &evm_ddr2_cctrl_data,
// &evm_ddr2_emif1_regs, 1); //cispl
#endif
}
4. 3.u-boot/arch/arm/cpu/armv7/am33xx/board.c
#ifdef CONFIG_SPL_BUILD
void board_init_f(ulong dummy)
{
//board_early_init_f();
//sdram_init();
//early_system_init();
board_early_init_f();
debug("==print from arch/arm/mach-omap2==\n");
sdram_init();
debug("==print from arch/arm/mach-omap2, after sdram_init==\n");
/* dram_init must store complete ramsize in gd->ram_size */
gd->ram_size = get_ram_size(
(void *)CONFIG_SYS_SDRAM_BASE,CONFIG_MAX_RAM_BANK_SIZE);
}
#endif
Any changes required in the code side, Could you give me some suggestions.
Thanking you,
Regards,
Ramachandra