We got a board with LPDDR3L, we used the spreadsheet for
i.MX6 sololite for generating a DCD table. I can load the uboot using
usb_loader and able to trace it. The uboot went through all the
initializations in board.c (board_init_f) except calling the last
function (dram_init). I also confirmed that the DCD table was called
during the uboot initialization because I added a function to change
the state of my GPIO pin.
//gpio_toggle1(); -- enabling the said function it works
gd->ram_size = get_ram_size((void *)PHYS_SDRAM, PHYS_SDRAM_SIZE);
//gpio_toggle1(); - enabling the said function and disabling the function above, I didn't see the toggle on my scope
Then, I added a gpio_toggle (infinite loop) function in dram_init.
Enabling the first function call, the toggling of the pin works. Then,
I disabled the first one and enabled the 2nd function, it did not run.
Maybe the get_ram_size function crashes because the DDR3 was not
Right now, I have no idea how to verify if the DDR3L has been
initialized correctly or not. I would like to know if you can give me
some pointers or any program to verify the initialization?.