[PATCH 3/6] ARM: i.MX: Make imx6_reset_reasons global

Andrey Smirnov andrew.smirnov at gmail.com
Thu Apr 26 22:49:43 PDT 2018


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 <andrew.smirnov at gmail.com>
---
 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(-)

diff --git a/arch/arm/mach-imx/imx.c b/arch/arm/mach-imx/imx.c
index bf15f0b06..1b4c1b3df 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 49610bf08..dc09088ab 100644
--- a/arch/arm/mach-imx/imx6.c
+++ b/arch/arm/mach-imx/imx6.c
@@ -174,15 +174,6 @@ int imx6_cpu_revision(void)
 	return soc_revision;
 }
 
-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;
@@ -232,7 +223,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 23e73d3b5..0894b95ab 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__ */
-- 
2.14.3




More information about the barebox mailing list