* [PATCH] arm: imx9: Update i.MX91 part number detection
@ 2026-05-11 7:47 Ye Li
2026-05-13 10:52 ` Peng Fan
0 siblings, 1 reply; 2+ messages in thread
From: Ye Li @ 2026-05-11 7:47 UTC (permalink / raw)
To: festevam, u-boot, peng.fan; +Cc: uboot-imx, ye.li
Change to not use NXP_RECOG fuse, but detect part number according
to feature disable fuses and SPEED fuse.
Signed-off-by: Ye Li <ye.li@nxp.com>
---
arch/arm/mach-imx/imx9/soc.c | 21 +++++----------------
1 file changed, 5 insertions(+), 16 deletions(-)
diff --git a/arch/arm/mach-imx/imx9/soc.c b/arch/arm/mach-imx/imx9/soc.c
index 44b3e0f5310..ec0cb18e954 100644
--- a/arch/arm/mach-imx/imx9/soc.c
+++ b/arch/arm/mach-imx/imx9/soc.c
@@ -198,26 +198,15 @@ static u32 get_cpu_variant_type(u32 type)
bool npu_disable = !!(val & BIT(13));
bool core1_disable = !!(val & BIT(15));
u32 pack_9x9_fused = BIT(4) | BIT(5) | BIT(17) | BIT(19) | BIT(24);
- u32 nxp_recog = (val & GENMASK(23, 16)) >> 16;
+ u32 speed = (val & GENMASK(11, 6)) >> 6;
/* For iMX91 */
if (type == MXC_CPU_IMX91) {
- switch (nxp_recog) {
- case 0x9:
- case 0xA:
+ if ((val2 & pack_9x9_fused) == pack_9x9_fused)
type = MXC_CPU_IMX9111;
- break;
- case 0xD:
- case 0xE:
- type = MXC_CPU_IMX9121;
- break;
- case 0xF:
- case 0x10:
- type = MXC_CPU_IMX9101;
- break;
- default:
- break; /* 9131 as default */
- }
+
+ if (speed == 0xf) /* 800Mhz arm */
+ type += 1;
return type;
}
--
2.37.1
^ permalink raw reply related [flat|nested] 2+ messages in thread
end of thread, other threads:[~2026-05-13 10:49 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-05-11 7:47 [PATCH] arm: imx9: Update i.MX91 part number detection Ye Li
2026-05-13 10:52 ` Peng Fan
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox