diff options
author | Jonas Karlman <jonas@kwiboo.se> | 2024-11-10 00:56:17 +0000 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2025-01-10 18:56:22 -0600 |
commit | 39389cfb3dfe10bc549b0719688285629b11c25d (patch) | |
tree | 10cf5341023a182e3f8e1c9dc04f658867bf151e | |
parent | 1c2ffcd5e622031fa1c05335d0db839de14bf0e9 (diff) |
rockchip: rk3308: Implement checkboard() to print SoC variant
Implement checkboard() to print current SoC variant used by a board,
e.g. one of:
SoC: RK3308
SoC: RK3308B
SoC: RK3308B-S
when U-Boot proper is running.
U-Boot 2025.01-rc1 (Nov 02 2024 - 20:26:25 +0000)
Model: Radxa ROCK Pi S
SoC: RK3308B
DRAM: 512 MiB (effective 510 MiB)
Information about the SoC variant is read from GRF.
Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
-rw-r--r-- | arch/arm/mach-rockchip/rk3308/rk3308.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/arch/arm/mach-rockchip/rk3308/rk3308.c b/arch/arm/mach-rockchip/rk3308/rk3308.c index c6b1a35f47e..03d97e1d746 100644 --- a/arch/arm/mach-rockchip/rk3308/rk3308.c +++ b/arch/arm/mach-rockchip/rk3308/rk3308.c @@ -216,3 +216,19 @@ int arch_cpu_init(void) return 0; } #endif + +#define RK3308_GRF_CHIP_ID 0xFF000800 + +int checkboard(void) +{ + u32 chip_id = readl(RK3308_GRF_CHIP_ID); + + if (chip_id == 0x3308) + printf("SoC: RK3308B\n"); + else if (chip_id == 0x3308c) + printf("SoC: RK3308B-S\n"); + else + printf("SoC: RK3308\n"); + + return 0; +} |