[U-Boot] [PATCH] rockchip: rk3188: ram: add support for 16bit row address

RK3188 using the same ddr_conf for both 15 bit and 16 bit row address.
Signed-off-by: Kever Yang kever.yang@rock-chips.com ---
drivers/ram/rockchip/sdram_rk3188.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/drivers/ram/rockchip/sdram_rk3188.c b/drivers/ram/rockchip/sdram_rk3188.c index 9d8b225..2b9992f 100644 --- a/drivers/ram/rockchip/sdram_rk3188.c +++ b/drivers/ram/rockchip/sdram_rk3188.c @@ -684,9 +684,16 @@ static int sdram_get_niu_config(struct rk3188_sdram_params *sdram_params) { int i, tmp, size, ret = 0;
+ row = sdram_params->ch[0].cs0_row; + /* + * RK3188 share the rank and row bit15, we use same ddr config for 15bit + * and 16bit row + */ + if (row == 16) + row = 15; tmp = sdram_params->ch[0].col - 9; tmp -= (sdram_params->ch[0].bw == 2) ? 0 : 1; - tmp |= ((sdram_params->ch[0].cs0_row - 13) << 4); + tmp |= ((row - 13) << 4); size = sizeof(ddrconf_table)/sizeof(ddrconf_table[0]); for (i = 0; i < size; i++) if (tmp == ddrconf_table[i])

RK3188 using the same ddr_conf for both 15 bit and 16 bit row address.
Signed-off-by: Kever Yang kever.yang@rock-chips.com
drivers/ram/rockchip/sdram_rk3188.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-)
Acked-by: Philipp Tomsich philipp.tomsich@theobroma-systems.com

RK3188 using the same ddr_conf for both 15 bit and 16 bit row address.
Signed-off-by: Kever Yang kever.yang@rock-chips.com
drivers/ram/rockchip/sdram_rk3188.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-)
Reviewed-by: Philipp Tomsich philipp.tomsich@theobroma-systems.com

Kever,
On 25 Sep 2017, at 10:33, Kever Yang kever.yang@rock-chips.com wrote:
RK3188 using the same ddr_conf for both 15 bit and 16 bit row address.
Signed-off-by: Kever Yang kever.yang@rock-chips.com
drivers/ram/rockchip/sdram_rk3188.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/drivers/ram/rockchip/sdram_rk3188.c b/drivers/ram/rockchip/sdram_rk3188.c index 9d8b225..2b9992f 100644 --- a/drivers/ram/rockchip/sdram_rk3188.c +++ b/drivers/ram/rockchip/sdram_rk3188.c @@ -684,9 +684,16 @@ static int sdram_get_niu_config(struct rk3188_sdram_params *sdram_params) { int i, tmp, size, ret = 0;
- row = sdram_params->ch[0].cs0_row;
‘row' is not declared here. I’ll fix up while applying.
I’d appreciate if you could check for build-failures with buildman (which caught this when I applied it) before submitting.
Thanks, Philipp.
- /*
* RK3188 share the rank and row bit15, we use same ddr config for 15bit
* and 16bit row
*/
- if (row == 16)
tmp = sdram_params->ch[0].col - 9; tmp -= (sdram_params->ch[0].bw == 2) ? 0 : 1;row = 15;
- tmp |= ((sdram_params->ch[0].cs0_row - 13) << 4);
- tmp |= ((row - 13) << 4); size = sizeof(ddrconf_table)/sizeof(ddrconf_table[0]); for (i = 0; i < size; i++) if (tmp == ddrconf_table[i])
-- 1.9.1

RK3188 using the same ddr_conf for both 15 bit and 16 bit row address.
Signed-off-by: Kever Yang kever.yang@rock-chips.com
drivers/ram/rockchip/sdram_rk3188.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-)
Applied to u-boot-rockchip, thanks!
participants (3)
-
Dr. Philipp Tomsich
-
Kever Yang
-
Philipp Tomsich