Commit 3bdc3484 authored by Will Deacon's avatar Will Deacon

ARM: kexec: use soft_restart for branching to the reboot buffer

Now that there is a common way to reset the machine, let's use it
instead of reinventing the wheel in the kexec backend.
Signed-off-by: default avatarWill Deacon <will.deacon@arm.com>
parent 02b73e2e
...@@ -12,12 +12,11 @@ ...@@ -12,12 +12,11 @@
#include <asm/mmu_context.h> #include <asm/mmu_context.h>
#include <asm/cacheflush.h> #include <asm/cacheflush.h>
#include <asm/mach-types.h> #include <asm/mach-types.h>
#include <asm/system.h>
extern const unsigned char relocate_new_kernel[]; extern const unsigned char relocate_new_kernel[];
extern const unsigned int relocate_new_kernel_size; extern const unsigned int relocate_new_kernel_size;
extern void setup_mm_for_reboot(void);
extern unsigned long kexec_start_address; extern unsigned long kexec_start_address;
extern unsigned long kexec_indirection_page; extern unsigned long kexec_indirection_page;
extern unsigned long kexec_mach_type; extern unsigned long kexec_mach_type;
...@@ -111,14 +110,6 @@ void machine_kexec(struct kimage *image) ...@@ -111,14 +110,6 @@ void machine_kexec(struct kimage *image)
if (kexec_reinit) if (kexec_reinit)
kexec_reinit(); kexec_reinit();
local_irq_disable();
local_fiq_disable(); soft_restart(reboot_code_buffer_phys);
setup_mm_for_reboot();
flush_cache_all();
outer_flush_all();
outer_disable();
cpu_proc_fin();
outer_inv_all();
flush_cache_all();
cpu_reset(reboot_code_buffer_phys);
} }
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment