diff options
Diffstat (limited to 'arch/arm/mach-imx/imx.c')
-rw-r--r-- | arch/arm/mach-imx/imx.c | 45 |
1 files changed, 27 insertions, 18 deletions
diff --git a/arch/arm/mach-imx/imx.c b/arch/arm/mach-imx/imx.c index 0942d50695..f3491c6df7 100644 --- a/arch/arm/mach-imx/imx.c +++ b/arch/arm/mach-imx/imx.c @@ -1,23 +1,12 @@ -/* - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - */ +// SPDX-License-Identifier: GPL-2.0-or-later #include <common.h> #include <of.h> #include <init.h> #include <io.h> -#include <mach/revision.h> -#include <mach/generic.h> -#include <mach/reset-reason.h> +#include <mach/imx/revision.h> +#include <mach/imx/generic.h> +#include <mach/imx/reset-reason.h> static int __imx_silicon_revision = IMX_CHIP_REV_UNKNOWN; @@ -80,6 +69,14 @@ static int imx_soc_from_dt(void) return IMX_CPU_IMX7; if (of_machine_is_compatible("fsl,imx8mq")) return IMX_CPU_IMX8MQ; + if (of_machine_is_compatible("fsl,imx8mm")) + return IMX_CPU_IMX8MM; + if (of_machine_is_compatible("fsl,imx8mn")) + return IMX_CPU_IMX8MN; + if (of_machine_is_compatible("fsl,imx8mp")) + return IMX_CPU_IMX8MP; + if (of_machine_is_compatible("fsl,imx93")) + return IMX_CPU_IMX93; if (of_machine_is_compatible("fsl,vf610")) return IMX_CPU_VF610; @@ -98,6 +95,10 @@ static int imx_init(void) return 0; } + /* + * Don't add new SoCs to this list, instead use the new + * soc framework (see soc-imx8m.c). + */ if (cpu_is_mx1()) ret = imx1_init(); else if (cpu_is_mx21()) @@ -120,8 +121,16 @@ static int imx_init(void) ret = imx6_init(); else if (cpu_is_mx7()) ret = imx7_init(); + else if (cpu_is_mx8mm()) + ret = 0; + else if (cpu_is_mx8mn()) + ret = 0; + else if (cpu_is_mx8mp()) + ret = 0; else if (cpu_is_mx8mq()) - ret = imx8mq_init(); + ret = 0; + else if (cpu_is_mx93()) + ret = imx93_init(); else if (cpu_is_vf610()) ret = vf610_init(); else @@ -201,6 +210,6 @@ void imx_set_reset_reason(void __iomem *srsr, reset_source_set_prinst(type, RESET_SOURCE_DEFAULT_PRIORITY, instance); - pr_info("i.MX reset reason %s (SRSR: 0x%08x)\n", - reset_source_name(), reg); + pr_debug("i.MX reset reason %s (SRSR: 0x%08x)\n", + reset_source_to_string(type), reg); } |