diff options
author | juhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2012-05-18 20:10:51 +0000 |
---|---|---|
committer | juhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2012-05-18 20:10:51 +0000 |
commit | 2bb56acc0c06fea8bbcbeca7324ddf98682f057d (patch) | |
tree | 4f4d693fb40653de79a8107f7254d31eed9b3582 /target/linux/generic/patches-2.6.39/332-mips-kexec-init-the-arguments-for-the-new-kernel-image.patch | |
parent | 2afa505fd161000c879a842bb004539ba32ddd57 (diff) |
linux/2.6.39: R.I.P.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31808 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/generic/patches-2.6.39/332-mips-kexec-init-the-arguments-for-the-new-kernel-image.patch')
-rw-r--r-- | target/linux/generic/patches-2.6.39/332-mips-kexec-init-the-arguments-for-the-new-kernel-image.patch | 52 |
1 files changed, 0 insertions, 52 deletions
diff --git a/target/linux/generic/patches-2.6.39/332-mips-kexec-init-the-arguments-for-the-new-kernel-image.patch b/target/linux/generic/patches-2.6.39/332-mips-kexec-init-the-arguments-for-the-new-kernel-image.patch deleted file mode 100644 index 5507dde64..000000000 --- a/target/linux/generic/patches-2.6.39/332-mips-kexec-init-the-arguments-for-the-new-kernel-image.patch +++ /dev/null @@ -1,52 +0,0 @@ -From 49d07a29653b1f2c6ae273b3d8fe93d981f43004 Mon Sep 17 00:00:00 2001 -From: Wu Zhangjin <wuzhangjin@gmail.com> -Date: Wed, 12 Jan 2011 20:59:32 +0000 -Subject: MIPS: Kexec: Init the arguments for the new kernel image - -Whenever the kexec-tools pass the command lines to the new kernel image, -init the arguments as the ones for the 1st kernel image. This fixed the -booting failure of Kexec on YeeLoong. - -Signed-off-by: Wu Zhangjin <wuzhangjin@gmail.com> ---- ---- a/arch/mips/kernel/machine_kexec.c -+++ b/arch/mips/kernel/machine_kexec.c -@@ -10,6 +10,7 @@ - #include <linux/mm.h> - #include <linux/delay.h> - -+#include <asm/bootinfo.h> - #include <asm/cacheflush.h> - #include <asm/page.h> - -@@ -21,9 +22,30 @@ void (*relocated_kexec_smp_wait) (void * - atomic_t kexec_ready_to_reboot = ATOMIC_INIT(0); - #endif - -+static void machine_kexec_init_args(void) -+{ -+ kexec_args[0] = fw_arg0; -+ kexec_args[1] = fw_arg1; -+ kexec_args[2] = fw_arg2; -+ kexec_args[3] = fw_arg3; -+ -+ pr_info("kexec_args[0] (argc): %lu\n", kexec_args[0]); -+ pr_info("kexec_args[1] (argv): %p\n", (void *)kexec_args[1]); -+ pr_info("kexec_args[2] (env ): %p\n", (void *)kexec_args[2]); -+ pr_info("kexec_args[3] (desc): %p\n", (void *)kexec_args[3]); -+} -+ - int - machine_kexec_prepare(struct kimage *kimage) - { -+ /* -+ * Whenever arguments passed from kexec-tools, Init the arguments as -+ * the original ones to avoid booting failure. -+ * -+ * This can be overrided by _machine_kexec_prepare(). -+ */ -+ machine_kexec_init_args(); -+ - if (_machine_kexec_prepare) - return _machine_kexec_prepare(kimage); - return 0; |