From: Ye Li Date: Mon, 11 May 2026 07:47:39 +0000 (+0800) Subject: arm: imx9: Update i.MX91 part number detection X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=a8684df5ed06a1b8fc31c62cb8c1342e6eb4aea6;p=thirdparty%2Fu-boot.git arm: imx9: Update i.MX91 part number detection Change to not use NXP_RECOG fuse, but detect part number according to feature disable fuses and SPEED fuse. Signed-off-by: Ye Li Reviewed-by: Peng Fan --- 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; }