ram: rockchip: Add basic support for RK3528
Add support for reading DRAM size information from PMUGRF os_reg18 reg. Compared to most Rockchip SoCs the RK3528 use os_reg18 for DRAM info, instead of os_reg2. Signed-off-by: Jonas Karlman <jonas@kwiboo.se> Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
This commit is contained in:
committed by
Simon Glass
parent
31701c6593
commit
61a281f3bc
@@ -13,6 +13,7 @@ obj-$(CONFIG_ROCKCHIP_RK3288) = sdram_rk3288.o
|
||||
obj-$(CONFIG_ROCKCHIP_RK3308) = sdram_rk3308.o
|
||||
obj-$(CONFIG_ROCKCHIP_RK3328) = sdram_rk3328.o sdram_pctl_px30.o sdram_phy_px30.o
|
||||
obj-$(CONFIG_ROCKCHIP_RK3399) += sdram_rk3399.o
|
||||
obj-$(CONFIG_ROCKCHIP_RK3528) += sdram_rk3528.o
|
||||
obj-$(CONFIG_ROCKCHIP_RK3568) += sdram_rk3568.o
|
||||
obj-$(CONFIG_ROCKCHIP_RK3588) += sdram_rk3588.o
|
||||
obj-$(CONFIG_ROCKCHIP_RV1126) += sdram_rv1126.o sdram_pctl_px30.o
|
||||
|
||||
33
drivers/ram/rockchip/sdram_rk3528.c
Normal file
33
drivers/ram/rockchip/sdram_rk3528.c
Normal file
@@ -0,0 +1,33 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
// Copyright Contributors to the U-Boot project.
|
||||
|
||||
#include <dm.h>
|
||||
#include <ram.h>
|
||||
#include <asm/arch-rockchip/sdram.h>
|
||||
|
||||
#define PMUGRF_BASE 0xff370000
|
||||
#define OS_REG18_REG 0x248
|
||||
|
||||
static int rk3528_dmc_get_info(struct udevice *dev, struct ram_info *info)
|
||||
{
|
||||
info->base = CFG_SYS_SDRAM_BASE;
|
||||
info->size = rockchip_sdram_size(PMUGRF_BASE + OS_REG18_REG);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static struct ram_ops rk3528_dmc_ops = {
|
||||
.get_info = rk3528_dmc_get_info,
|
||||
};
|
||||
|
||||
static const struct udevice_id rk3528_dmc_ids[] = {
|
||||
{ .compatible = "rockchip,rk3528-dmc" },
|
||||
{ }
|
||||
};
|
||||
|
||||
U_BOOT_DRIVER(rockchip_rk3528_dmc) = {
|
||||
.name = "rockchip_rk3528_dmc",
|
||||
.id = UCLASS_RAM,
|
||||
.of_match = rk3528_dmc_ids,
|
||||
.ops = &rk3528_dmc_ops,
|
||||
};
|
||||
Reference in New Issue
Block a user