mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-29 08:01:08 +00:00
ram: rk3399: Don't wait for PLL lock in lpddr4
lpddr4 has PLL bypass mode during phy initialization phase, which does all pll configurations. So no need to wait explicitly during pctl config. Signed-off-by: Jagan Teki <jagan@amarulasolutions.com> Signed-off-by: YouMin Chen <cym@rock-chips.com> Reviewed-by: Kever Yang <Kever.yang@rock-chips.com>
This commit is contained in:
parent
6cbd2426b3
commit
5cbc866981
1 changed files with 16 additions and 10 deletions
|
@ -570,16 +570,22 @@ static int pctl_cfg(struct dram_info *dram, const struct chan_info *chan,
|
|||
setbits_le32(&denali_pi[0], START);
|
||||
setbits_le32(&denali_ctl[0], START);
|
||||
|
||||
/* Waiting for phy DLL lock */
|
||||
while (1) {
|
||||
tmp = readl(&denali_phy[920]);
|
||||
tmp1 = readl(&denali_phy[921]);
|
||||
tmp2 = readl(&denali_phy[922]);
|
||||
if ((((tmp >> 16) & 0x1) == 0x1) &&
|
||||
(((tmp1 >> 16) & 0x1) == 0x1) &&
|
||||
(((tmp1 >> 0) & 0x1) == 0x1) &&
|
||||
(((tmp2 >> 0) & 0x1) == 0x1))
|
||||
break;
|
||||
/**
|
||||
* LPDDR4 use PLL bypass mode for init
|
||||
* not need to wait for the PLL to lock
|
||||
*/
|
||||
if (params->base.dramtype != LPDDR4) {
|
||||
/* Waiting for phy DLL lock */
|
||||
while (1) {
|
||||
tmp = readl(&denali_phy[920]);
|
||||
tmp1 = readl(&denali_phy[921]);
|
||||
tmp2 = readl(&denali_phy[922]);
|
||||
if ((((tmp >> 16) & 0x1) == 0x1) &&
|
||||
(((tmp1 >> 16) & 0x1) == 0x1) &&
|
||||
(((tmp1 >> 0) & 0x1) == 0x1) &&
|
||||
(((tmp2 >> 0) & 0x1) == 0x1))
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
copy_to_reg(&denali_phy[896], ¶ms_phy[896], (958 - 895) * 4);
|
||||
|
|
Loading…
Reference in a new issue