* [PATCH RFC] ARM: Provide default restart handler
@ 2013-12-08 6:53 Alexander Shiyan
2013-12-08 10:14 ` Russell King - ARM Linux
0 siblings, 1 reply; 2+ messages in thread
From: Alexander Shiyan @ 2013-12-08 6:53 UTC (permalink / raw)
To: linux-arm-kernel
This patch provides default restart handler if it is not explicitly specified.
Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
---
arch/arm/kernel/setup.c | 7 +++++++
arch/arm/mach-clps711x/board-autcpu12.c | 1 -
arch/arm/mach-clps711x/board-cdb89712.c | 1 -
arch/arm/mach-clps711x/board-clep7312.c | 1 -
arch/arm/mach-clps711x/board-edb7211.c | 1 -
arch/arm/mach-clps711x/board-p720t.c | 1 -
arch/arm/mach-clps711x/common.c | 5 -----
arch/arm/mach-clps711x/common.h | 3 ---
arch/arm/mach-mmp/brownstone.c | 1 -
arch/arm/mach-mmp/common.c | 5 -----
arch/arm/mach-mmp/common.h | 1 -
arch/arm/mach-mmp/flint.c | 1 -
arch/arm/mach-mmp/jasper.c | 1 -
arch/arm/mach-mmp/tavorevb.c | 1 -
arch/arm/mach-mmp/ttc_dkb.c | 1 -
15 files changed, 7 insertions(+), 24 deletions(-)
diff --git a/arch/arm/kernel/setup.c b/arch/arm/kernel/setup.c
index 6a1b8a8..c74f98f 100644
--- a/arch/arm/kernel/setup.c
+++ b/arch/arm/kernel/setup.c
@@ -862,6 +862,11 @@ void __init hyp_mode_check(void)
#endif
}
+static void default_arm_restart(enum reboot_mode mode, const char *cmd)
+{
+ soft_restart(0);
+}
+
void __init setup_arch(char **cmdline_p)
{
const struct machine_desc *mdesc;
@@ -900,6 +905,8 @@ void __init setup_arch(char **cmdline_p)
if (mdesc->restart)
arm_pm_restart = mdesc->restart;
+ else
+ arm_pm_restart = default_arm_restart;
unflatten_device_tree();
diff --git a/arch/arm/mach-clps711x/board-autcpu12.c b/arch/arm/mach-clps711x/board-autcpu12.c
index f8d71a8..cf2f1d9 100644
--- a/arch/arm/mach-clps711x/board-autcpu12.c
+++ b/arch/arm/mach-clps711x/board-autcpu12.c
@@ -273,6 +273,5 @@ MACHINE_START(AUTCPU12, "autronix autcpu12")
.init_machine = autcpu12_init,
.init_late = autcpu12_init_late,
.handle_irq = clps711x_handle_irq,
- .restart = clps711x_restart,
MACHINE_END
diff --git a/arch/arm/mach-clps711x/board-cdb89712.c b/arch/arm/mach-clps711x/board-cdb89712.c
index a9e38c6..491bc37 100644
--- a/arch/arm/mach-clps711x/board-cdb89712.c
+++ b/arch/arm/mach-clps711x/board-cdb89712.c
@@ -146,5 +146,4 @@ MACHINE_START(CDB89712, "Cirrus-CDB89712")
.init_time = clps711x_timer_init,
.init_machine = cdb89712_init,
.handle_irq = clps711x_handle_irq,
- .restart = clps711x_restart,
MACHINE_END
diff --git a/arch/arm/mach-clps711x/board-clep7312.c b/arch/arm/mach-clps711x/board-clep7312.c
index b476424..5295b49 100644
--- a/arch/arm/mach-clps711x/board-clep7312.c
+++ b/arch/arm/mach-clps711x/board-clep7312.c
@@ -43,5 +43,4 @@ MACHINE_START(CLEP7212, "Cirrus Logic 7212/7312")
.init_irq = clps711x_init_irq,
.init_time = clps711x_timer_init,
.handle_irq = clps711x_handle_irq,
- .restart = clps711x_restart,
MACHINE_END
diff --git a/arch/arm/mach-clps711x/board-edb7211.c b/arch/arm/mach-clps711x/board-edb7211.c
index fe6184e..89a0d72 100644
--- a/arch/arm/mach-clps711x/board-edb7211.c
+++ b/arch/arm/mach-clps711x/board-edb7211.c
@@ -187,5 +187,4 @@ MACHINE_START(EDB7211, "CL-EDB7211 (EP7211 eval board)")
.init_machine = edb7211_init,
.init_late = edb7211_init_late,
.handle_irq = clps711x_handle_irq,
- .restart = clps711x_restart,
MACHINE_END
diff --git a/arch/arm/mach-clps711x/board-p720t.c b/arch/arm/mach-clps711x/board-p720t.c
index dd81b06..be5b2e9 100644
--- a/arch/arm/mach-clps711x/board-p720t.c
+++ b/arch/arm/mach-clps711x/board-p720t.c
@@ -372,5 +372,4 @@ MACHINE_START(P720T, "ARM-Prospector720T")
.init_machine = p720t_init,
.init_late = p720t_init_late,
.handle_irq = clps711x_handle_irq,
- .restart = clps711x_restart,
MACHINE_END
diff --git a/arch/arm/mach-clps711x/common.c b/arch/arm/mach-clps711x/common.c
index 134641d..416d150 100644
--- a/arch/arm/mach-clps711x/common.c
+++ b/arch/arm/mach-clps711x/common.c
@@ -384,11 +384,6 @@ void __init clps711x_timer_init(void)
setup_irq(IRQ_TC2OI, &clps711x_timer_irq);
}
-void clps711x_restart(enum reboot_mode mode, const char *cmd)
-{
- soft_restart(0);
-}
-
static void clps711x_idle(void)
{
clps_writel(1, HALT);
diff --git a/arch/arm/mach-clps711x/common.h b/arch/arm/mach-clps711x/common.h
index 9a6767b..1763585 100644
--- a/arch/arm/mach-clps711x/common.h
+++ b/arch/arm/mach-clps711x/common.h
@@ -4,8 +4,6 @@
* Common bits.
*/
-#include <linux/reboot.h>
-
#define CLPS711X_NR_IRQS (33)
#define CLPS711X_NR_GPIO (4 * 8 + 3)
#define CLPS711X_GPIO(prt, bit) ((prt) * 8 + (bit))
@@ -14,5 +12,4 @@ extern void clps711x_map_io(void);
extern void clps711x_init_irq(void);
extern void clps711x_timer_init(void);
extern void clps711x_handle_irq(struct pt_regs *regs);
-extern void clps711x_restart(enum reboot_mode mode, const char *cmd);
extern void clps711x_init_early(void);
diff --git a/arch/arm/mach-mmp/brownstone.c b/arch/arm/mach-mmp/brownstone.c
index ac25544..4b3d668 100644
--- a/arch/arm/mach-mmp/brownstone.c
+++ b/arch/arm/mach-mmp/brownstone.c
@@ -227,5 +227,4 @@ MACHINE_START(BROWNSTONE, "Brownstone Development Platform")
.init_irq = mmp2_init_irq,
.init_time = mmp2_timer_init,
.init_machine = brownstone_init,
- .restart = mmp_restart,
MACHINE_END
diff --git a/arch/arm/mach-mmp/common.c b/arch/arm/mach-mmp/common.c
index c03b4ab..b1f004a 100644
--- a/arch/arm/mach-mmp/common.c
+++ b/arch/arm/mach-mmp/common.c
@@ -46,8 +46,3 @@ void __init mmp_map_io(void)
/* this is early, initialize mmp_chip_id here */
mmp_chip_id = __raw_readl(MMP_CHIPID);
}
-
-void mmp_restart(enum reboot_mode mode, const char *cmd)
-{
- soft_restart(0);
-}
diff --git a/arch/arm/mach-mmp/common.h b/arch/arm/mach-mmp/common.h
index cf445ba..6dd1fcc 100644
--- a/arch/arm/mach-mmp/common.h
+++ b/arch/arm/mach-mmp/common.h
@@ -4,7 +4,6 @@
extern void timer_init(int irq);
extern void __init mmp_map_io(void);
-extern void mmp_restart(enum reboot_mode, const char *);
extern void __init pxa168_clk_init(void);
extern void __init pxa910_clk_init(void);
extern void __init mmp2_clk_init(void);
diff --git a/arch/arm/mach-mmp/flint.c b/arch/arm/mach-mmp/flint.c
index 6291c33..02cd8e7 100644
--- a/arch/arm/mach-mmp/flint.c
+++ b/arch/arm/mach-mmp/flint.c
@@ -130,5 +130,4 @@ MACHINE_START(FLINT, "Flint Development Platform")
.init_irq = mmp2_init_irq,
.init_time = mmp2_timer_init,
.init_machine = flint_init,
- .restart = mmp_restart,
MACHINE_END
diff --git a/arch/arm/mach-mmp/jasper.c b/arch/arm/mach-mmp/jasper.c
index 0e9e5c0..feb9553 100644
--- a/arch/arm/mach-mmp/jasper.c
+++ b/arch/arm/mach-mmp/jasper.c
@@ -184,5 +184,4 @@ MACHINE_START(MARVELL_JASPER, "Jasper Development Platform")
.init_irq = mmp2_init_irq,
.init_time = mmp2_timer_init,
.init_machine = jasper_init,
- .restart = mmp_restart,
MACHINE_END
diff --git a/arch/arm/mach-mmp/tavorevb.c b/arch/arm/mach-mmp/tavorevb.c
index cdfc9bf..9fbfe12 100644
--- a/arch/arm/mach-mmp/tavorevb.c
+++ b/arch/arm/mach-mmp/tavorevb.c
@@ -112,5 +112,4 @@ MACHINE_START(TAVOREVB, "PXA910 Evaluation Board (aka TavorEVB)")
.init_irq = pxa910_init_irq,
.init_time = pxa910_timer_init,
.init_machine = tavorevb_init,
- .restart = mmp_restart,
MACHINE_END
diff --git a/arch/arm/mach-mmp/ttc_dkb.c b/arch/arm/mach-mmp/ttc_dkb.c
index cfadd97..44a6e74 100644
--- a/arch/arm/mach-mmp/ttc_dkb.c
+++ b/arch/arm/mach-mmp/ttc_dkb.c
@@ -311,5 +311,4 @@ MACHINE_START(TTC_DKB, "PXA910-based TTC_DKB Development Platform")
.init_irq = pxa910_init_irq,
.init_time = pxa910_timer_init,
.init_machine = ttc_dkb_init,
- .restart = mmp_restart,
MACHINE_END
--
1.8.3.2
^ permalink raw reply related [flat|nested] 2+ messages in thread
* [PATCH RFC] ARM: Provide default restart handler
2013-12-08 6:53 [PATCH RFC] ARM: Provide default restart handler Alexander Shiyan
@ 2013-12-08 10:14 ` Russell King - ARM Linux
0 siblings, 0 replies; 2+ messages in thread
From: Russell King - ARM Linux @ 2013-12-08 10:14 UTC (permalink / raw)
To: linux-arm-kernel
On Sun, Dec 08, 2013 at 10:53:29AM +0400, Alexander Shiyan wrote:
> This patch provides default restart handler if it is not explicitly specified.
So what happens on those platforms where it's already not specified?
There's 75 files with a machine descriptor without a .restart hook
specified or reference to arm_pm_restart. You're potentially changing
the behaviour for those.
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2013-12-08 10:14 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-12-08 6:53 [PATCH RFC] ARM: Provide default restart handler Alexander Shiyan
2013-12-08 10:14 ` Russell King - ARM Linux
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).