From b1347e1de70e63a6e0154e641c65ac909793d2ac Mon Sep 17 00:00:00 2001 From: Andrey Smirnov Date: Thu, 26 Apr 2018 22:49:43 -0700 Subject: ARM: i.MX: Make imx6_reset_reasons global Both i.MX51 and i.MX53 have exactly the same reset source mapping, so rename imx6_reset_reasons to imx_reset_reasons and make it a globally visible constant so it could be shared. Signed-off-by: Andrey Smirnov Signed-off-by: Sascha Hauer --- arch/arm/mach-imx/imx.c | 9 +++++++++ arch/arm/mach-imx/imx6.c | 11 +---------- arch/arm/mach-imx/include/mach/reset-reason.h | 2 ++ 3 files changed, 12 insertions(+), 10 deletions(-) (limited to 'arch') diff --git a/arch/arm/mach-imx/imx.c b/arch/arm/mach-imx/imx.c index bf15f0b063..1b4c1b3df1 100644 --- a/arch/arm/mach-imx/imx.c +++ b/arch/arm/mach-imx/imx.c @@ -153,6 +153,15 @@ static int imx_init(void) } postcore_initcall(imx_init); +const struct imx_reset_reason imx_reset_reasons[] = { + { IMX_SRC_SRSR_IPP_RESET, RESET_POR, 0 }, + { IMX_SRC_SRSR_WDOG1_RESET, RESET_WDG, 0 }, + { IMX_SRC_SRSR_JTAG_RESET, RESET_JTAG, 0 }, + { IMX_SRC_SRSR_JTAG_SW_RESET, RESET_JTAG, 0 }, + { IMX_SRC_SRSR_WARM_BOOT, RESET_RST, 0 }, + { /* sentinel */ } +}; + void imx_set_reset_reason(void __iomem *srsr, const struct imx_reset_reason *reasons) { diff --git a/arch/arm/mach-imx/imx6.c b/arch/arm/mach-imx/imx6.c index 8d2788c59d..73cd4eb6dc 100644 --- a/arch/arm/mach-imx/imx6.c +++ b/arch/arm/mach-imx/imx6.c @@ -148,15 +148,6 @@ static void imx6ul_enet_clk_init(void) writel(val, gprbase + IOMUXC_GPR1); } -static const struct imx_reset_reason imx6_reset_reasons[] = { - { IMX_SRC_SRSR_IPP_RESET, RESET_POR, 0 }, - { IMX_SRC_SRSR_WDOG1_RESET, RESET_WDG, 0 }, - { IMX_SRC_SRSR_JTAG_RESET, RESET_JTAG, 0 }, - { IMX_SRC_SRSR_JTAG_SW_RESET, RESET_JTAG, 0 }, - { IMX_SRC_SRSR_WARM_BOOT, RESET_RST, 0 }, - { /* sentinel */ } -}; - int imx6_init(void) { const char *cputypestr; @@ -206,7 +197,7 @@ int imx6_init(void) } imx_set_silicon_revision(cputypestr, mx6_silicon_revision); - imx_set_reset_reason(src + IMX6_SRC_SRSR, imx6_reset_reasons); + imx_set_reset_reason(src + IMX6_SRC_SRSR, imx_reset_reasons); imx6_setup_ipu_qos(); imx6ul_enet_clk_init(); diff --git a/arch/arm/mach-imx/include/mach/reset-reason.h b/arch/arm/mach-imx/include/mach/reset-reason.h index 23e73d3b58..0894b95ab3 100644 --- a/arch/arm/mach-imx/include/mach/reset-reason.h +++ b/arch/arm/mach-imx/include/mach/reset-reason.h @@ -34,4 +34,6 @@ struct imx_reset_reason { void imx_set_reset_reason(void __iomem *, const struct imx_reset_reason *); +extern const struct imx_reset_reason imx_reset_reasons[]; + #endif /* __MACH_RESET_REASON_H__ */ -- cgit v1.2.3