diff options
author | Jagan Teki <jagan@amarulasolutions.com> | 2019-07-16 17:27:18 +0530 |
---|---|---|
committer | Kever Yang <kever.yang@rock-chips.com> | 2019-07-20 23:59:44 +0800 |
commit | 4e9de9eba844a2432a40ffb4ce7a07f9d786e940 (patch) | |
tree | d3155de01620f8fd59160d19e651170add6d0894 | |
parent | d3d0099ca6661af0ae3cab1402fbe87121b645a5 (diff) | |
download | u-boot-4e9de9eba844a2432a40ffb4ce7a07f9d786e940.zip u-boot-4e9de9eba844a2432a40ffb4ce7a07f9d786e940.tar.gz u-boot-4e9de9eba844a2432a40ffb4ce7a07f9d786e940.tar.bz2 |
ram: rk3399: Map chipselect for lpddr4
Assign desired cs_map values for lpddr4 during set memory map.
Initial cs_map values is based on the sdram parameters, so
the same will adjusted based dramtype as LPDDR4.
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
Signed-off-by: YouMin Chen <cym@rock-chips.com>
-rw-r--r-- | drivers/ram/rockchip/sdram_rk3399.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/ram/rockchip/sdram_rk3399.c b/drivers/ram/rockchip/sdram_rk3399.c index e526512..2498620 100644 --- a/drivers/ram/rockchip/sdram_rk3399.c +++ b/drivers/ram/rockchip/sdram_rk3399.c @@ -188,6 +188,16 @@ static void set_memory_map(const struct chan_info *chan, u32 channel, clrsetbits_le32(&denali_pi[155], (0x3 << 16) | (0x7 << 24), ((3 - sdram_ch->cap_info.bk) << 16) | ((16 - row) << 24)); + + if (IS_ENABLED(CONFIG_RAM_RK3399_LPDDR4)) { + if (cs_map == 1) + cs_map = 0x5; + else if (cs_map == 2) + cs_map = 0xa; + else + cs_map = 0xF; + } + /* PI_41 PI_CS_MAP:RW:24:4 */ clrsetbits_le32(&denali_pi[41], 0xf << 24, cs_map << 24); if (sdram_ch->cap_info.rank == 1 && params->base.dramtype == DDR3) |