LPDDR2 configuration for i.MX6Q with uBoot

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

LPDDR2 configuration for i.MX6Q with uBoot

658 Views
benediktfranz
Contributor II

Valued i.MX community,

 

I have a problem with the LPDDR2 configuration on a custom i.MX6Q board with 1 GiB of RAM, using uBoot. I used the LPDDR2 Script Aid (v0.06) to get the correct configuration values for the MMDCs, but uBoot recognises only half the RAM which is on the board. Please see bdinfo.txt (it appears to recognise only one bank). Also, during startup of uBoot, it shows the message: "DRAM:  512 MiB" where it should read 1 GiB. Can you please help me ensure that all the parameters in the Excel sheet are set correctly? Even when uBoot recognises only half the RAM, a mtest performed on the last 64k of RAM makes the system crash...

 

I have attached a snippet from the schematic for the board which contains the LPDDR2 Chips (which are Micron EDB4432BBBJ) and the RAM controller on the imx6q. Please note that although the schematic contains nets for two chip select lines per channel, only one is used per channel (the LPDDR2 chips have only one CS pin each). So the "Number of Chip Selects used per Channel" should be one, correct?!

 

The way I use the configuration data generated by the Excel sheet (in the tab RealView.inc) is I simply paste it to the .cfg file which uBoot uses as DCD data when I build uBoot.

 

Any help is appreciated! Thanks a lot!

Original Attachment has been moved to: bdinfo.txt.zip

Original Attachment has been moved to: RealView.inc.zip

2 Replies

447 Views
Yuri
NXP Employee
NXP Employee

Hello,

  perhaps Your LPDDR2 device is Single-Rank, Single-Channel - no really the second CS.

Have a great day,
Yuri

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos

447 Views
jan_spurek
NXP Employee
NXP Employee

Hello Benedikt,

have you also made appropriate changes in include/configs/boardname.h?

CONFIG_LOADADDR: Normally your zImage is

loaded to this address for boot.

CONFIG_SYS_MALLOC_LEN: Heap memory size.

CONFIG_STACKSIZE: Stack size.

CONFIG_NR_DRAM_BANKS: Number of ddr banks.

PHYS_SDRAM_SIZE: Configure the DDR size in MB.

PHYS_SDRAM: Physical address for the DDR memory

• fdt_file: Configure "#define

CONFIG_DEFAULT_FDT_FILE <customer>.dtb" or

directly change "fdt_file=<customer>.dtb".

• Config file is important for U-Boot. It determines the

size, functionality, and performance of u-boot.bin.

You can find more information in the BSP Porting Guide.

Best Regards,

Jan Spurek