From: Alice Guo <[email protected]> Add basic SoC support for i.MX952: - Add CONFIG_IMX952 Kconfig option - Include i.MX952 clock and power headers - Set CPU speed grade to 1.7GHz for i.MX952
Signed-off-by: Alice Guo <[email protected]> --- arch/arm/mach-imx/imx9/Kconfig | 9 +++++++++ arch/arm/mach-imx/imx9/scmi/common.h | 10 ++++++++++ arch/arm/mach-imx/imx9/scmi/soc.c | 2 ++ 3 files changed, 21 insertions(+) diff --git a/arch/arm/mach-imx/imx9/Kconfig b/arch/arm/mach-imx/imx9/Kconfig index d9f97e4328c..716940930a6 100644 --- a/arch/arm/mach-imx/imx9/Kconfig +++ b/arch/arm/mach-imx/imx9/Kconfig @@ -47,6 +47,15 @@ config IMX94 select SCMI_FIRMWARE select SPL_IMX_CONTAINER_USE_TRAMPOLINE +config IMX952 + bool + select ARMV8_SPL_EXCEPTION_VECTORS + select DM_MAILBOX + select IMX9 + select IMX_PQC_SUPPORT + select SCMI_FIRMWARE + select SPL_IMX_CONTAINER_USE_TRAMPOLINE + config SYS_SOC default "imx9" diff --git a/arch/arm/mach-imx/imx9/scmi/common.h b/arch/arm/mach-imx/imx9/scmi/common.h index dd4675402c7..c3610127dce 100644 --- a/arch/arm/mach-imx/imx9/scmi/common.h +++ b/arch/arm/mach-imx/imx9/scmi/common.h @@ -21,6 +21,16 @@ #define IMX95_PD_M70 IMX95_PD_M7 #endif +#ifdef CONFIG_IMX952 +#define IMX_PLAT 952 +#include <imx952-clock.h> +#include <imx952-power.h> + +#define IMX952_CLK_SEL_A55C0 IMX952_CLK_GPR_SEL_A55C0 +#define IMX952_PD_M70 IMX952_PD_M7 +#define IMX952_CLK_FLEXSPI1 IMX952_CLK_XSPI1 +#define IMX952_CLK_24M IMX952_CLK_OSC24M +#endif #define IMX_PLAT_STR__(plat) # plat #define IMX_PLAT_STR_(IMX_PLAT) IMX_PLAT_STR__(IMX_PLAT) diff --git a/arch/arm/mach-imx/imx9/scmi/soc.c b/arch/arm/mach-imx/imx9/scmi/soc.c index e573736825c..f0443ccfb2d 100644 --- a/arch/arm/mach-imx/imx9/scmi/soc.c +++ b/arch/arm/mach-imx/imx9/scmi/soc.c @@ -154,6 +154,8 @@ u32 get_cpu_speed_grade_hz(void) if (is_imx95()) max_speed = 2000000000; + if (is_imx952()) + max_speed = 1700000000; /* In case the fuse of speed grade not programmed */ if (speed > max_speed) -- 2.43.0

