]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/commitdiff
sh: kexec: Drop SR.BL bit toggling.
authorPaul Mundt <lethal@linux-sh.org>
Wed, 18 Mar 2009 10:06:15 +0000 (19:06 +0900)
committerPaul Mundt <lethal@linux-sh.org>
Wed, 18 Mar 2009 10:06:15 +0000 (19:06 +0900)
For the time being, this creates far more problems than it solves,
evident by the second local_irq_disable(). Kill all of this off
and rely on IRQ disabling to protect against the VBR reload.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
arch/sh/kernel/machine_kexec.c

index c44efb73ab1ae31edf4388617d698551e71d4d15..69268c0d8063ae8217f41eaa8d9d18d135c069e3 100644 (file)
@@ -110,23 +110,22 @@ void machine_kexec(struct kimage *image)
        memcpy((void *)reboot_code_buffer, relocate_new_kernel,
                                                relocate_new_kernel_size);
 
-        kexec_info(image);
+       kexec_info(image);
        flush_cache_all();
 
-       set_bl_bit();
 #if defined(CONFIG_SH_STANDARD_BIOS)
        asm volatile("ldc %0, vbr" :
                     : "r" (((unsigned long) gdb_vbr_vector) - 0x100)
                     : "memory");
 #endif
+
        /* now call it */
        rnk = (relocate_new_kernel_t) reboot_code_buffer;
        (*rnk)(page_list, reboot_code_buffer, image->start);
 
 #ifdef CONFIG_KEXEC_JUMP
        asm volatile("ldc %0, vbr" : : "r" (&vbr_base) : "memory");
-       local_irq_disable();
-       clear_bl_bit();
+
        if (image->preserve_context)
                restore_processor_state();