[PATCH 44/50] ARM: vexpress: Drop unnecessary initcall
Sascha Hauer
s.hauer at pengutronix.de
Fri Mar 3 01:21:25 PST 2023
Call vexpress_restart_register_feature() from vexpress_*init() to
get rid of an unnecessary initcall.
Signed-off-by: Sascha Hauer <s.hauer at pengutronix.de>
---
arch/arm/mach-vexpress/reset.c | 9 ++++-----
arch/arm/mach-vexpress/v2m.c | 5 +++--
include/mach/vexpress/vexpress.h | 6 ++++++
3 files changed, 13 insertions(+), 7 deletions(-)
create mode 100644 include/mach/vexpress/vexpress.h
diff --git a/arch/arm/mach-vexpress/reset.c b/arch/arm/mach-vexpress/reset.c
index f0fa75330e..0d626db7d7 100644
--- a/arch/arm/mach-vexpress/reset.c
+++ b/arch/arm/mach-vexpress/reset.c
@@ -9,7 +9,7 @@
#include <init.h>
#include <restart.h>
#include <linux/amba/sp805.h>
-
+#include <mach/vexpress/vexpress.h>
#include <mach/vexpress/devices.h>
void __iomem *v2m_wdt_base;
@@ -22,10 +22,9 @@ static void __noreturn vexpress_reset_soc(struct restart_handler *rst)
hang();
}
-static int restart_register_feature(void)
+void vexpress_restart_register_feature(void __iomem *base)
{
- restart_handler_register_fn("soc-wdt", vexpress_reset_soc);
+ v2m_wdt_base = base;
- return 0;
+ restart_handler_register_fn("soc-wdt", vexpress_reset_soc);
}
-coredevice_initcall(restart_register_feature);
diff --git a/arch/arm/mach-vexpress/v2m.c b/arch/arm/mach-vexpress/v2m.c
index 9181d7e2ef..5c4c2478cf 100644
--- a/arch/arm/mach-vexpress/v2m.c
+++ b/arch/arm/mach-vexpress/v2m.c
@@ -8,6 +8,7 @@
#include <io.h>
#include <asm/hardware/sp810.h>
#include <mach/vexpress/devices.h>
+#include <mach/vexpress/vexpress.h>
void __iomem *v2m_sysreg_base;
@@ -26,12 +27,12 @@ static void v2m_sysctl_init(void __iomem *base)
void vexpress_a9_legacy_init(void)
{
- v2m_wdt_base = IOMEM(0x1000f000);
v2m_sysctl_init(IOMEM(0x10001000));
+ vexpress_restart_register_feature(IOMEM(0x1000f000));
}
void vexpress_init(void)
{
- v2m_wdt_base = IOMEM(0x1c0f0000);
v2m_sysctl_init(IOMEM(0x1c020000));
+ vexpress_restart_register_feature(IOMEM(0x1c0f0000));
}
diff --git a/include/mach/vexpress/vexpress.h b/include/mach/vexpress/vexpress.h
new file mode 100644
index 0000000000..768a3ab07a
--- /dev/null
+++ b/include/mach/vexpress/vexpress.h
@@ -0,0 +1,6 @@
+#ifndef __MACH_VEXPRESS_VEXPRESS_H
+#define __MACH_VEXPRESS_VEXPRESS_H
+
+void vexpress_restart_register_feature(void __iomem *base);
+
+#endif /* __MACH_VEXPRESS_VEXPRESS_H */
--
2.30.2
More information about the barebox
mailing list