/
i.MX6 Dual-lite with 2GB DDR

i.MX6 Dual-lite with 2GB DDR

For  SOM iMX6 Dual-lite with 2GB DDR requires a special U-Boot change to support the 2GB DDR with imx6 Dual-lite...

By default the general iMX6 U-Boot configured to support 1GB DDR when detected imx6 Dual-liteSOM version, so you need to rebuild your U-Boot with applying the attached patch to support the 2GB DDR with SOM iMX6 Dual-lite (the attached patch should replace the default settings of the imx6 Dual-lite from 1GB to 2GB and adding the DDR calibration for the 2GB DDR).

diff --git a/board/solidrun/mx6cuboxi/mx6cuboxi.c b/board/solidrun/mx6cuboxi/mx6cuboxi.c index 8fad3febf9..450399088d 100644 --- a/board/solidrun/mx6cuboxi/mx6cuboxi.c +++ b/board/solidrun/mx6cuboxi/mx6cuboxi.c @@ -936,6 +936,22 @@ static const struct mx6_mmdc_calibration mx6dl_1g_mmcd_calib = { .p1_mpwrdlctl = 0x36363430, }; +/* microSOM with Dual lite processor and 2GB memory */ +static const struct mx6_mmdc_calibration mx6dl_2g_mmcd_calib = { + .p0_mpwldectrl0 = 0x00450052, + .p0_mpwldectrl1 = 0x003C0046, + .p1_mpwldectrl0 = 0x00230025, + .p1_mpwldectrl1 = 0x00280036, + .p0_mpdgctrl0 = 0x4230022C, + .p0_mpdgctrl1 = 0x02180224, + .p1_mpdgctrl0 = 0x421C0220, + .p1_mpdgctrl1 = 0x020C0218, + .p0_mprddlctl = 0x3C3E4440, + .p1_mprddlctl = 0x44464A3E, + .p0_mpwrdlctl = 0x38302E2E, + .p1_mpwrdlctl = 0x3C363632, +}; + static struct mx6_ddr3_cfg mem_ddr_2g = { .mem_speed = 1600, .density = 2, @@ -1007,7 +1023,7 @@ static void spl_dram_init(int width) else if (is_cpu_type(MXC_CPU_MX6Q)) mx6_dram_cfg(&sysinfo, &mx6q_2g_mmcd_calib, &mem_ddr_4g); else if (is_cpu_type(MXC_CPU_MX6DL)) - mx6_dram_cfg(&sysinfo, &mx6dl_1g_mmcd_calib, &mem_ddr_2g); + mx6_dram_cfg(&sysinfo, &mx6dl_2g_mmcd_calib, &mem_ddr_4g); else if (is_cpu_type(MXC_CPU_MX6SOLO)) mx6_dram_cfg(&sysinfo, &mx6dl_512m_mmcd_calib, &mem_ddr_2g); } -- 2.25.1

you can follow the i.MX6 U-Boot guide to generate a new U-Boot for imx6 SOM.

The quick test can be:

1- install general i.MX6 image from Solidrun web (sr-imx6-debian-buster-20220731-cli.img.xz) & uncompress & flash it on SD Card

2- override the bootloader (U-Boot & SPL) of the SD card using the commands below: 

dd if=SPL of=/dev/sdX bs=1k seek=1 conv=sync dd if=u-boot.img of=/dev/sdX bs=1k seek=69 conv=sync

Attached here is a pre-built U-Boot and SPL with the above changes applied.

 

Related content

Installing and booting an image on i.MX6 SOM eMMC
Installing and booting an image on i.MX6 SOM eMMC
More like this
i.MX6 SOM boot configuration pins
i.MX6 SOM boot configuration pins
More like this
eFuses for i.MX6 SOM (Developers page)
eFuses for i.MX6 SOM (Developers page)
More like this
i.MX6 U-Boot
i.MX6 U-Boot
More like this
Boot from USB OTG - i.MX6
Boot from USB OTG - i.MX6
More like this
i.MX6 Kernel
i.MX6 Kernel
More like this

SolidRun Ltd.