[RFC PATCH v1 05/14] ram: rockchip: sdram_common: add LPDDR4X and LPDDR5 support
Johan Axelsson
johan.axelsson at proton.me
Mon May 25 03:29:10 CEST 2026
sdram_print_dram_type() and sdram_detect_dbw() only handled types up to
LPDDR4. Adding RK3576 with LPDDR5 exposes two gaps:
1. sdram_print_dram_type(): LPDDR4X (8) and LPDDR5 (9) fell through to
"Unknown Device". Add the missing cases.
2. sdram_detect_dbw(): the fixed-dbw=1 branch covered DDR3 and LPDDR4
but not LPDDR4X or LPDDR5 (both use x16 dies → dbw=1). Extend the
condition to include the new types.
LPDDR4X and LPDDR5 enum values are already defined in sdram.h as 8
and 9 respectively.
Signed-off-by: Johan Axelsson <johan.axelsson at proton.me>
---
drivers/ram/rockchip/sdram_common.c | 11 +++++++++--
1 file changed, 9 insertions(+), 2 deletions(-)
diff --git a/drivers/ram/rockchip/sdram_common.c b/drivers/ram/rockchip/sdram_common.c
index b7a8fce607c..777e1044b40 100644
--- a/drivers/ram/rockchip/sdram_common.c
+++ b/drivers/ram/rockchip/sdram_common.c
@@ -29,6 +29,12 @@ void sdram_print_dram_type(unsigned char dramtype)
case LPDDR4:
printascii("LPDDR4");
break;
+ case LPDDR4X:
+ printascii("LPDDR4X");
+ break;
+ case LPDDR5:
+ printascii("LPDDR5");
+ break;
default:
printascii("Unknown Device");
break;
@@ -285,13 +291,14 @@ int sdram_detect_bg(struct sdram_cap_info *cap_info,
return 0;
}
-/* detect dbw for ddr3,lpddr2,lpddr3,lpddr4 */
+/* detect dbw for ddr3,lpddr2,lpddr3,lpddr4,lpddr4x,lpddr5 */
int sdram_detect_dbw(struct sdram_cap_info *cap_info, u32 dram_type)
{
u32 row, col, bk, bw, cs_cap, cs;
u32 die_bw_0 = 0, die_bw_1 = 0;
- if (dram_type == DDR3 || dram_type == LPDDR4) {
+ if (dram_type == DDR3 || dram_type == LPDDR4 ||
+ dram_type == LPDDR4X || dram_type == LPDDR5) {
cap_info->dbw = 1;
} else if (dram_type == LPDDR3 || dram_type == LPDDR2) {
row = cap_info->cs0_row;
--
2.45.1.windows.1
More information about the U-Boot
mailing list