ARM: restart: only perform setup for restart when soft-restarting
authorRussell King <rmk+kernel@arm.linux.org.uk>
Tue, 1 Nov 2011 13:16:26 +0000 (13:16 +0000)
committerGrazvydas Ignotas <notasas@gmail.com>
Wed, 20 Feb 2013 21:19:23 +0000 (23:19 +0200)
commit6f168c6d7ac6d5a62e40e62241443e7fae0cd65c
tree2626cb3b487cb7c75ae7145db4f256a58fa87942
parent57c345150c0bb9bddedf081f41e7d9082c19071a
ARM: restart: only perform setup for restart when soft-restarting

We only need to set the system up for a soft-restart if we're going to
be doing a soft-restart.  Provide a new function (soft_restart()) which
does the setup and final call for this, and make platforms use it.
Eliminate the call to setup_restart() from the default handler.

This means that platforms arch_reset() function is no longer called with
the page tables prepared for a soft-restart, and caches will still be
enabled.

Acked-by: Nicolas Pitre <nico@linaro.org>
Acked-by: Will Deacon <will.deacon@arm.com>
Acked-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Acked-by: Kukjin Kim <kgene.kim@samsung.com>
Acked-by: Sascha Hauer <s.hauer@pengutronix.de>
Acked-by: Viresh Kumar <viresh.kumar@st.com>
Acked-by: Krzysztof Ha■asa <khc@pm.waw.pl>
Acked-by: Paul Mundt <lethal@linux-sh.org>
Acked-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Acked-by: Wan ZongShun <mcuos.com@gmail.com>
Acked-by: Eric Miao <eric.y.miao@gmail.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
21 files changed:
arch/arm/include/asm/system.h
arch/arm/kernel/process.c
arch/arm/mach-clps711x/include/mach/system.h
arch/arm/mach-ebsa110/include/mach/system.h
arch/arm/mach-footbridge/include/mach/system.h
arch/arm/mach-iop32x/include/mach/system.h
arch/arm/mach-iop33x/include/mach/system.h
arch/arm/mach-ixp4xx/include/mach/system.h
arch/arm/mach-ks8695/include/mach/system.h
arch/arm/mach-mmp/include/mach/system.h
arch/arm/mach-mxs/system.c
arch/arm/mach-pnx4008/include/mach/system.h
arch/arm/mach-pxa/reset.c
arch/arm/mach-rpc/include/mach/system.h
arch/arm/mach-s3c2410/include/mach/system-reset.h
arch/arm/mach-s3c64xx/include/mach/system.h
arch/arm/mach-sa1100/include/mach/system.h
arch/arm/mach-shmobile/include/mach/system.h
arch/arm/mach-w90x900/include/mach/system.h
arch/arm/plat-mxc/system.c
arch/arm/plat-spear/include/plat/system.h