diff options
author | Daniel Axtens <dja@axtens.net> | 2016-07-11 20:54:52 -0400 |
---|---|---|
committer | Michael Ellerman <mpe@ellerman.id.au> | 2016-07-14 07:12:06 -0400 |
commit | 95ec77c06e8e63fff50c497eca0668bf6da39813 (patch) | |
tree | bc1b47558bf4050f8efc3a757b2bc0837f57b93a /arch/powerpc/platforms/8xx | |
parent | 62c2c5cf387beb4bbf45045c3041dc9cfb40e5df (diff) |
powerpc: Make ppc_md.{halt, restart} __noreturn
powernv marks it's halt and restart calls as __noreturn. However,
ppc_md does not have this annotation. Add the annotation to ppc_md,
and then to every halt/restart function that is missing it.
Additionally, I have verified that all of these functions do not
return. Occasionally I have added a spin loop to be sure.
Signed-off-by: Daniel Axtens <dja@axtens.net>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Diffstat (limited to 'arch/powerpc/platforms/8xx')
-rw-r--r-- | arch/powerpc/platforms/8xx/m8xx_setup.c | 2 | ||||
-rw-r--r-- | arch/powerpc/platforms/8xx/mpc8xx.h | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/arch/powerpc/platforms/8xx/m8xx_setup.c b/arch/powerpc/platforms/8xx/m8xx_setup.c index c289fc77b4ba..b1ab6e96cb31 100644 --- a/arch/powerpc/platforms/8xx/m8xx_setup.c +++ b/arch/powerpc/platforms/8xx/m8xx_setup.c | |||
@@ -198,7 +198,7 @@ void mpc8xx_get_rtc_time(struct rtc_time *tm) | |||
198 | return; | 198 | return; |
199 | } | 199 | } |
200 | 200 | ||
201 | void mpc8xx_restart(char *cmd) | 201 | void __noreturn mpc8xx_restart(char *cmd) |
202 | { | 202 | { |
203 | car8xx_t __iomem *clk_r = immr_map(im_clkrst); | 203 | car8xx_t __iomem *clk_r = immr_map(im_clkrst); |
204 | 204 | ||
diff --git a/arch/powerpc/platforms/8xx/mpc8xx.h b/arch/powerpc/platforms/8xx/mpc8xx.h index 239a243a6161..31cc2ecace42 100644 --- a/arch/powerpc/platforms/8xx/mpc8xx.h +++ b/arch/powerpc/platforms/8xx/mpc8xx.h | |||
@@ -11,7 +11,7 @@ | |||
11 | #ifndef __MPC8xx_H | 11 | #ifndef __MPC8xx_H |
12 | #define __MPC8xx_H | 12 | #define __MPC8xx_H |
13 | 13 | ||
14 | extern void mpc8xx_restart(char *cmd); | 14 | extern void __noreturn mpc8xx_restart(char *cmd); |
15 | extern void mpc8xx_calibrate_decr(void); | 15 | extern void mpc8xx_calibrate_decr(void); |
16 | extern int mpc8xx_set_rtc_time(struct rtc_time *tm); | 16 | extern int mpc8xx_set_rtc_time(struct rtc_time *tm); |
17 | extern void mpc8xx_get_rtc_time(struct rtc_time *tm); | 17 | extern void mpc8xx_get_rtc_time(struct rtc_time *tm); |