3

I'm using an imx6slevk board with yocto-bsp.

I use mfgtool to flash the images and it works fine for 1GB DRAM.

Now I'm trying to change DRAM to 512 MB.

I modified the dts file memory node:

memory {
    reg = <0x80000000 0x20000000>; //it was 0x40000000 
       };

I ran calibration tool and updated 2 registers

DATA 4 0x021b0848 0x4644484a //changed for 512 mb old value = 0x4241444a
DATA 4 0x021b0850 0x3a363a30 //changed for 512 mb old value = 0x3030312b

However u-boot log still shows 1 GiB DRAM in flash log:

U-Boot 2017.03-imx_v2017.03_4.9.88_2.0.0_ga+gb76bb1b (Sep 24 2019 - 11:04:03 +0530)

CPU:   Freescale i.MX6SL rev1.2 996 MHz (running at 792 MHz)
CPU:   Commercial temperature grade (0C to 95C) at 48C
Reset cause: POR
Model: Freescale i.MX6 SoloLite EVK Board
Board: MX6SLEVK
DRAM:  1 GiB

How can I change DRAM from 1 GiB o 512 MiB?

The kernel doesn't flash without this.

Alexey Vazhnov
  • 1,291
  • 17
  • 20
Producer
  • 77
  • 2
  • 10
  • Have you set the rigth values in the provided DDR configuration sheet and then fed the results into the calibration tool? Have you tried modifying `PHYS_SDRAM_SIZE` in `/u-boot/include/configs/whatever.h`? This, along with the modifications in the DCD (MMDC), should suffice. – danrodlor Sep 24 '19 at 08:39
  • Just noticed that you're using u-boot 2017, `PHYS_SDRAM_SIZE` is not used for MX6SLEVK. The DDR size is retrieved by the `imx_ddr_size()` function, by reading the MMDC registers. Double check your DCD configuration. – danrodlor Sep 24 '19 at 09:03
  • On running calibration test with ddr stress test tool it only showed two registers that I have to modify as mentioned above. is there anything else I need to modify? Also the imx_ddr_size returns a value, is this value what appers as 1GiB in the log? – Producer Sep 24 '19 at 12:11
  • I am using renesas RZG2LC custom board. I want to configure 2gb DDR ram. How can I do it? – Meera Mar 09 '23 at 06:49

0 Answers0