Configuring mmdc io on imx6sll for self-refresh mode

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

Configuring mmdc io on imx6sll for self-refresh mode

579 Views
skoschuk999
Contributor I

Hi All,

I'm trying to add self-refresh mode support for lpddr2 on imx6sll. I was able to establish an approximate list of "mmdc" registers,

static const u32 imx6sll_mmdc_lpddr2_offset[] __initconst = {
    0x01c, 0x800, 0x85c, 0x890,     /*MDSCR,MPZQHWCTRL,MPZQLP2CTL,MPPDCMPR2*/
    0x8b8, 0x81c, 0x820, 0x824,     /*MPMUR0,MPRDDQBY0DL,MPRDDQBY1DL,MPRDDQBY2DL*/
    0x828, 0x82c, 0x830, 0x834,     /*MPRDDQBY3DL,MPWRDQBY0DL,MPWRDQBY1DL,MPWRDQBY2DL*/
    0x838, 0x83c, 0x848, 0x850,     /*MPWRDQBY3DL,MPDGCTRL0,MPRDDLCTL,MPWRDLCTL*/
    0x8c0, 0x8b8, 0x004, 0x00c,        /*MPDCCR,MPMUR0,MDPDC,MDCFG0*/
    0x010, 0x038, 0x014, 0x018,      /*MDCFG1,MDCFG3LP,MDCFG2,MDMISC*/
    0x01c, 0x02c, 0x030,             /*MDSCR,MDRWD,MDOR*/
    0x040, 0x000, 0x020,             /*MDASP,MDCTL,MDREF*/
    0x800, 0x004, 0x01c,            /*MPZQHWCTRL,MDPDC,MDSCR*/
};

thanks to a reference manual, and values for some of them,

        pm_info->mmdc_val[0][1] = 0x8000;
        pm_info->mmdc_val[1][1] = 0xa1390003;
        pm_info->mmdc_val[3][1] = 0x400000;
        pm_info->mmdc_val[4][1] = 0x800;
        pm_info->mmdc_val[17][1] = 0x800;
        pm_info->mmdc_val[18][1] = 0x20024;
        pm_info->mmdc_val[23][1] = 0x201708;
        pm_info->mmdc_val[24][1] = 0x8000;
        pm_info->mmdc_val[30][1] = 0xa1310003;

but I can not find any information about the list of "mmdc io" registers for imx6sll. All this is complicated by the fact that in imx6sll there are no "mmdc io" registers (CAS, RAS, SODT0, SODT1, DRAM_RESET), and because of this I can not make simple mapping of registers from another processor, such as imx6sl or imx6sx.

Can anyone tell me which "mmdc io" registers I need to save, or is it possible for someone to have documentation on this topic for imx6sll?

Thanks & Regards,

Valentin

Labels (3)
0 Kudos
1 Reply

485 Views
igorpadykov
NXP Employee
NXP Employee

Hi Valentin

sect.27.10 MMDC Memory Map/Register Definition i.MX6SLL Reference Manual

describes all MMDC addresses

https://www.nxp.com/webapp/Download?colCode=IMX6SLLRM 

I believe there is some misunderstaning since i.MX6SLL does not support DDR3 so

some features may be absent (there are no CAS, RAS, SODT0, SODT1, DRAM_RESET signals).

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

0 Kudos