[PATCH 22/41] ARM: restart: mv78xx0: use new restart hook

Nicolas Pitre nico at fluxnic.net
Thu Nov 24 17:02:08 EST 2011


On Sun, 6 Nov 2011, Russell King - ARM Linux wrote:

> Hook these platforms restart code into the new restart hook rather than
> using arch_reset().
> 
> Signed-off-by: Russell King <rmk+kernel at arm.linux.org.uk>

Acked-by: «Nicolas pitre <nico at linaro.org>

(missed the non Kirkwood ones before)


> ---
>  arch/arm/mach-mv78xx0/buffalo-wxl-setup.c   |    1 +
>  arch/arm/mach-mv78xx0/common.c              |   16 ++++++++++++++++
>  arch/arm/mach-mv78xx0/common.h              |    1 +
>  arch/arm/mach-mv78xx0/db78x00-bp-setup.c    |    1 +
>  arch/arm/mach-mv78xx0/include/mach/system.h |   14 --------------
>  arch/arm/mach-mv78xx0/rd78x00-masa-setup.c  |    1 +
>  6 files changed, 20 insertions(+), 14 deletions(-)
> 
> diff --git a/arch/arm/mach-mv78xx0/buffalo-wxl-setup.c b/arch/arm/mach-mv78xx0/buffalo-wxl-setup.c
> index 0e94268..ee74ec9 100644
> --- a/arch/arm/mach-mv78xx0/buffalo-wxl-setup.c
> +++ b/arch/arm/mach-mv78xx0/buffalo-wxl-setup.c
> @@ -151,4 +151,5 @@ MACHINE_START(TERASTATION_WXL, "Buffalo Nas WXL")
>  	.init_early	= mv78xx0_init_early,
>  	.init_irq	= mv78xx0_init_irq,
>  	.timer		= &mv78xx0_timer,
> +	.restart	= mv78xx0_restart,
>  MACHINE_END
> diff --git a/arch/arm/mach-mv78xx0/common.c b/arch/arm/mach-mv78xx0/common.c
> index 23d3980..5b9632b 100644
> --- a/arch/arm/mach-mv78xx0/common.c
> +++ b/arch/arm/mach-mv78xx0/common.c
> @@ -401,3 +401,19 @@ void __init mv78xx0_init(void)
>  	feroceon_l2_init(is_l2_writethrough());
>  #endif
>  }
> +
> +void mv78xx0_restart(char mode, const char *cmd)
> +{
> +	/*
> +	 * Enable soft reset to assert RSTOUTn.
> +	 */
> +	writel(SOFT_RESET_OUT_EN, RSTOUTn_MASK);
> +
> +	/*
> +	 * Assert soft reset.
> +	 */
> +	writel(SOFT_RESET, SYSTEM_SOFT_RESET);
> +
> +	while (1)
> +		;
> +}
> diff --git a/arch/arm/mach-mv78xx0/common.h b/arch/arm/mach-mv78xx0/common.h
> index 632e63d..07d5f8f 100644
> --- a/arch/arm/mach-mv78xx0/common.h
> +++ b/arch/arm/mach-mv78xx0/common.h
> @@ -46,6 +46,7 @@ void mv78xx0_uart1_init(void);
>  void mv78xx0_uart2_init(void);
>  void mv78xx0_uart3_init(void);
>  void mv78xx0_i2c_init(void);
> +void mv78xx0_restart(char, const char *);
>  
>  extern struct sys_timer mv78xx0_timer;
>  
> diff --git a/arch/arm/mach-mv78xx0/db78x00-bp-setup.c b/arch/arm/mach-mv78xx0/db78x00-bp-setup.c
> index 50b85ae..4d6d48b 100644
> --- a/arch/arm/mach-mv78xx0/db78x00-bp-setup.c
> +++ b/arch/arm/mach-mv78xx0/db78x00-bp-setup.c
> @@ -99,4 +99,5 @@ MACHINE_START(DB78X00_BP, "Marvell DB-78x00-BP Development Board")
>  	.init_early	= mv78xx0_init_early,
>  	.init_irq	= mv78xx0_init_irq,
>  	.timer		= &mv78xx0_timer,
> +	.restart	= mv78xx0_restart,
>  MACHINE_END
> diff --git a/arch/arm/mach-mv78xx0/include/mach/system.h b/arch/arm/mach-mv78xx0/include/mach/system.h
> index 66e7ce4..1ae3585 100644
> --- a/arch/arm/mach-mv78xx0/include/mach/system.h
> +++ b/arch/arm/mach-mv78xx0/include/mach/system.h
> @@ -9,8 +9,6 @@
>  #ifndef __ASM_ARCH_SYSTEM_H
>  #define __ASM_ARCH_SYSTEM_H
>  
> -#include <mach/bridge-regs.h>
> -
>  static inline void arch_idle(void)
>  {
>  	cpu_do_idle();
> @@ -18,18 +16,6 @@ static inline void arch_idle(void)
>  
>  static inline void arch_reset(char mode, const char *cmd)
>  {
> -	/*
> -	 * Enable soft reset to assert RSTOUTn.
> -	 */
> -	writel(SOFT_RESET_OUT_EN, RSTOUTn_MASK);
> -
> -	/*
> -	 * Assert soft reset.
> -	 */
> -	writel(SOFT_RESET, SYSTEM_SOFT_RESET);
> -
> -	while (1)
> -		;
>  }
>  
>  
> diff --git a/arch/arm/mach-mv78xx0/rd78x00-masa-setup.c b/arch/arm/mach-mv78xx0/rd78x00-masa-setup.c
> index e85222e..9a88270 100644
> --- a/arch/arm/mach-mv78xx0/rd78x00-masa-setup.c
> +++ b/arch/arm/mach-mv78xx0/rd78x00-masa-setup.c
> @@ -84,4 +84,5 @@ MACHINE_START(RD78X00_MASA, "Marvell RD-78x00-MASA Development Board")
>  	.init_early	= mv78xx0_init_early,
>  	.init_irq	= mv78xx0_init_irq,
>  	.timer		= &mv78xx0_timer,
> +	.restart	= mv78xx0_restart,
>  MACHINE_END
> -- 
> 1.7.4.4
> 
> 
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
> 


More information about the linux-arm-kernel mailing list