| /rk3399_ARM-atf/drivers/st/ddr/phy/phyinit/src/ |
| H A D | ddrphy_phyinit_initstruct.c | 18 void ddrphy_phyinit_initstruct(struct stm32mp_ddr_config *config, struct pmu_smb_ddr_1d *mb_ddr_1d) in ddrphy_phyinit_initstruct() argument 133 memset((void *)mb_ddr_1d, 0, sizeof(struct pmu_smb_ddr_1d)); in ddrphy_phyinit_initstruct() 135 mb_ddr_1d->pstate = 0U; in ddrphy_phyinit_initstruct() 136 mb_ddr_1d->sequencectrl = (uint16_t)config->uia.sequencectrl; in ddrphy_phyinit_initstruct() 137 mb_ddr_1d->phyconfigoverride = 0x0U; in ddrphy_phyinit_initstruct() 138 mb_ddr_1d->hdtctrl = hdtctrl; in ddrphy_phyinit_initstruct() 139 mb_ddr_1d->msgmisc = msgmisc; in ddrphy_phyinit_initstruct() 140 mb_ddr_1d->reserved00 = reserved00; in ddrphy_phyinit_initstruct() 141 mb_ddr_1d->dfimrlmargin = dfimrlmargin; in ddrphy_phyinit_initstruct() 142 mb_ddr_1d->phyvref = (uint8_t)config->uia.phyvref; in ddrphy_phyinit_initstruct() [all …]
|
| H A D | ddrphy_phyinit_softsetmb.c | 28 int ddrphy_phyinit_softsetmb(struct pmu_smb_ddr_1d *mb_ddr_1d, enum message_block_field field, in ddrphy_phyinit_softsetmb() argument 41 mb_ddr_1d->pstate = (uint8_t)value; in ddrphy_phyinit_softsetmb() 44 mb_ddr_1d->pllbypassen = (uint8_t)value; in ddrphy_phyinit_softsetmb() 47 mb_ddr_1d->dramfreq = (uint16_t)value; in ddrphy_phyinit_softsetmb() 50 mb_ddr_1d->dfifreqratio = (uint8_t)value; in ddrphy_phyinit_softsetmb() 53 mb_ddr_1d->bpznresval = (uint8_t)value; in ddrphy_phyinit_softsetmb() 56 mb_ddr_1d->phyodtimpedance = (uint8_t)value; in ddrphy_phyinit_softsetmb() 59 mb_ddr_1d->phydrvimpedance = (uint8_t)value; in ddrphy_phyinit_softsetmb() 63 mb_ddr_1d->dramtype = (uint8_t)value; in ddrphy_phyinit_softsetmb() 66 mb_ddr_1d->disableddbyte = (uint8_t)value; in ddrphy_phyinit_softsetmb() [all …]
|
| H A D | ddrphy_phyinit_calcmb.c | 40 int ddrphy_phyinit_calcmb(struct stm32mp_ddr_config *config, struct pmu_smb_ddr_1d *mb_ddr_1d) in ddrphy_phyinit_calcmb() argument 76 mr4 = mb_ddr_1d->mr4 & 0x1C0U; in ddrphy_phyinit_calcmb() 91 ret = ddrphy_phyinit_softsetmb(mb_ddr_1d, MB_FIELD_DRAMTYPE, 0x1U); in ddrphy_phyinit_calcmb() 98 ret = ddrphy_phyinit_softsetmb(mb_ddr_1d, MB_FIELD_DRAMTYPE, 0x2U); in ddrphy_phyinit_calcmb() 107 ret = ddrphy_phyinit_softsetmb(mb_ddr_1d, MB_FIELD_PSTATE, 0U); in ddrphy_phyinit_calcmb() 112 ret = ddrphy_phyinit_softsetmb(mb_ddr_1d, MB_FIELD_DRAMFREQ, config->uib.frequency * 2U); in ddrphy_phyinit_calcmb() 117 ret = ddrphy_phyinit_softsetmb(mb_ddr_1d, MB_FIELD_PLLBYPASSEN, config->uib.pllbypass); in ddrphy_phyinit_calcmb() 123 ret = ddrphy_phyinit_softsetmb(mb_ddr_1d, MB_FIELD_DFIFREQRATIO, 0x2U); in ddrphy_phyinit_calcmb() 129 ret = ddrphy_phyinit_softsetmb(mb_ddr_1d, MB_FIELD_PHYODTIMPEDANCE, 0U); in ddrphy_phyinit_calcmb() 134 ret = ddrphy_phyinit_softsetmb(mb_ddr_1d, MB_FIELD_PHYDRVIMPEDANCE, 0U); in ddrphy_phyinit_calcmb() [all …]
|
| H A D | ddrphy_phyinit_f_loaddmem.c | 28 int ddrphy_phyinit_f_loaddmem(struct stm32mp_ddr_config *config, struct pmu_smb_ddr_1d *mb_ddr_1d) in ddrphy_phyinit_f_loaddmem() argument 36 if ((mb_ddr_1d->enableddqs > (8U * (uint8_t)config->uib.numactivedbytedfi0)) || in ddrphy_phyinit_f_loaddmem() 37 (mb_ddr_1d->enableddqs <= 0U)) { in ddrphy_phyinit_f_loaddmem() 44 if (((mb_ddr_1d->enableddqscha % 16U) != 0U) || ((mb_ddr_1d->enableddqschb % 16U) != 0U)) { in ddrphy_phyinit_f_loaddmem() 51 if ((mb_ddr_1d->enableddqscha > (uint8_t)(8U * config->uib.numactivedbytedfi0)) || in ddrphy_phyinit_f_loaddmem() 52 (mb_ddr_1d->enableddqschb > (uint8_t)(8U * config->uib.numactivedbytedfi1)) || in ddrphy_phyinit_f_loaddmem() 53 ((mb_ddr_1d->enableddqscha == 0U) && (mb_ddr_1d->enableddqschb == 0U))) { in ddrphy_phyinit_f_loaddmem() 62 ptr16 = (uint16_t *)mb_ddr_1d; in ddrphy_phyinit_f_loaddmem()
|
| H A D | ddrphy_phyinit_isdbytedisabled.c | 19 struct pmu_smb_ddr_1d *mb_ddr_1d, uint32_t dbytenumber) in ddrphy_phyinit_isdbytedisabled() argument 60 if ((mb_ddr_1d->enableddqs < 1U) || in ddrphy_phyinit_isdbytedisabled() 61 (mb_ddr_1d->enableddqs > (uint8_t)(8U * config->uib.numactivedbytedfi0))) { in ddrphy_phyinit_isdbytedisabled() 63 VERBOSE("%s enableddqs(%u)\n", __func__, mb_ddr_1d->enableddqs); in ddrphy_phyinit_isdbytedisabled() 68 disabledbyte |= (int)mb_ddr_1d->disableddbyte & (0x1 << dbytenumber); in ddrphy_phyinit_isdbytedisabled() 71 if ((mb_ddr_1d->enableddqscha < 1U) || in ddrphy_phyinit_isdbytedisabled() 72 (mb_ddr_1d->enableddqscha > (uint8_t)(8U * config->uib.numactivedbytedfi0))) { in ddrphy_phyinit_isdbytedisabled() 74 VERBOSE("%s enableddqscha(%u)\n", __func__, mb_ddr_1d->enableddqscha); in ddrphy_phyinit_isdbytedisabled() 79 ((mb_ddr_1d->enableddqschb < 1U) || in ddrphy_phyinit_isdbytedisabled() 80 (mb_ddr_1d->enableddqschb > (uint8_t)(8U * config->uib.numactivedbytedfi1)))) { in ddrphy_phyinit_isdbytedisabled() [all …]
|
| H A D | ddrphy_phyinit_sequence.c | 29 struct pmu_smb_ddr_1d mb_ddr_1d; /* Firmware 1D Message Block structure */ in ddrphy_phyinit_sequence() local 37 ddrphy_phyinit_initstruct(config, &mb_ddr_1d); in ddrphy_phyinit_sequence() 40 ret = ddrphy_phyinit_calcmb(config, &mb_ddr_1d); in ddrphy_phyinit_sequence() 52 ret = ddrphy_phyinit_c_initphyconfig(config, &mb_ddr_1d, &ardptrinitval); in ddrphy_phyinit_sequence() 70 ddrphy_phyinit_progcsrskiptrain(config, &mb_ddr_1d, ardptrinitval); in ddrphy_phyinit_sequence() 79 ret = ddrphy_phyinit_f_loaddmem(config, &mb_ddr_1d); in ddrphy_phyinit_sequence()
|
| H A D | ddrphy_phyinit_progcsrskiptrain.c | 40 static void dfimrl_program(struct stm32mp_ddr_config *config, struct pmu_smb_ddr_1d *mb_ddr_1d, in dfimrl_program() argument 66 dfimrl = (uint16_t)(dfimrl_in_dficlk + mb_ddr_1d->dfimrlmargin); in dfimrl_program() 104 static void txdqsdlytg_program(struct stm32mp_ddr_config *config, struct pmu_smb_ddr_1d *mb_ddr_1d, argument 146 if (ddrphy_phyinit_isdbytedisabled(config, mb_ddr_1d, byte) != 0) { 153 if ((mb_ddr_1d->cspresent & 0x1U) != 0U) { 155 if (((mb_ddr_1d->cspresentcha & 0x1U) | 156 (mb_ddr_1d->cspresentchb & 0x1U)) != 0U) { 165 if ((((mb_ddr_1d->cspresentcha & 0x2U) >> 1) | 166 ((mb_ddr_1d->cspresentchb & 0x2U) >> 1)) != 0U) { 187 static void txdqdlytg_program(struct stm32mp_ddr_config *config, struct pmu_smb_ddr_1d *mb_ddr_1d, argument [all …]
|
| H A D | ddrphy_phyinit_c_initphyconfig.c | 126 static void dfidatacsdestmap_program(struct pmu_smb_ddr_1d *mb_ddr_1d) in dfidatacsdestmap_program() argument 128 if ((mb_ddr_1d->msgmisc & 0x40U) != 0U) { in dfidatacsdestmap_program() 642 struct pmu_smb_ddr_1d *mb_ddr_1d) in vrefinglobal_program() argument 645 int32_t vref_percentvddq = (int32_t)mb_ddr_1d->phyvref * 1000 * 100 / 128; in vrefinglobal_program() 852 struct pmu_smb_ddr_1d *mb_ddr_1d) argument 870 mr5 = (mb_ddr_1d->mr5 >> 12) & 0x1U; 877 if (ddrphy_phyinit_isdbytedisabled(config, mb_ddr_1d, d) != 0) { 937 struct pmu_smb_ddr_1d *mb_ddr_1d) argument 943 dmipinpresent = (mb_ddr_1d->mr5 >> 12) & 0x1U; 1051 struct pmu_smb_ddr_1d *mb_ddr_1d, uint32_t *ardptrinitval) argument [all …]
|
| /rk3399_ARM-atf/drivers/st/ddr/phy/phyinit/include/ |
| H A D | ddrphy_phyinit_usercustom.h | 97 struct pmu_smb_ddr_1d *mb_ddr_1d, uint32_t *ardptrinitval); 100 struct pmu_smb_ddr_1d *mb_ddr_1d, uint32_t ardptrinitval); 101 int ddrphy_phyinit_f_loaddmem(struct stm32mp_ddr_config *config, struct pmu_smb_ddr_1d *mb_ddr_1d); 106 int ddrphy_phyinit_calcmb(struct stm32mp_ddr_config *config, struct pmu_smb_ddr_1d *mb_ddr_1d); 110 struct pmu_smb_ddr_1d *mb_ddr_1d, uint32_t dbytenumber);
|
| H A D | ddrphy_phyinit.h | 34 int ddrphy_phyinit_softsetmb(struct pmu_smb_ddr_1d *mb_ddr_1d, enum message_block_field field, 36 void ddrphy_phyinit_initstruct(struct stm32mp_ddr_config *config, struct pmu_smb_ddr_1d *mb_ddr_1d);
|