[PATCH 10/12] i386: Introduce head32.c
- From: ebiederm@xxxxxxxxxxxx (Eric W. Biederman)
- Date: Mon, 30 Apr 2007 10:32:56 -0600
Copy x86_64 and add a head32.c so we can start moving early
architecture initialization out of assembly.
Signed-off-by: Eric W. Biederman <ebiederm@xxxxxxxxxxxx>
---
arch/i386/Makefile | 2 +-
arch/i386/kernel/Makefile | 2 +-
arch/i386/kernel/head.S | 2 +-
arch/i386/kernel/head32.c | 14 ++++++++++++++
4 files changed, 17 insertions(+), 3 deletions(-)
create mode 100644 arch/i386/kernel/head32.c
diff --git a/arch/i386/Makefile b/arch/i386/Makefile
index 6dc5e5d..89e6f6f 100644
--- a/arch/i386/Makefile
+++ b/arch/i386/Makefile
@@ -96,7 +96,7 @@ core-$(CONFIG_X86_ES7000) := arch/i386/mach-es7000/
# default subarch .h files
mflags-y += -Iinclude/asm-i386/mach-default
-head-y := arch/i386/kernel/head.o arch/i386/kernel/init_task.o
+head-y := arch/i386/kernel/head.o arch/i386/kernel/head32.o arch/i386/kernel/init_task.o
libs-y += arch/i386/lib/
core-y += arch/i386/kernel/ \
diff --git a/arch/i386/kernel/Makefile b/arch/i386/kernel/Makefile
index 4c96141..530ccaa 100644
--- a/arch/i386/kernel/Makefile
+++ b/arch/i386/kernel/Makefile
@@ -2,7 +2,7 @@
# Makefile for the linux kernel.
#
-extra-y := head.o init_task.o vmlinux.lds
+extra-y := head.o head32.o init_task.o vmlinux.lds
obj-y := process.o signal.o entry.o traps.o irq.o \
ptrace.o time.o ioport.o ldt.o setup.o i8259.o sys_i386.o \
diff --git a/arch/i386/kernel/head.S b/arch/i386/kernel/head.S
index de65f45..22ddb3f 100644
--- a/arch/i386/kernel/head.S
+++ b/arch/i386/kernel/head.S
@@ -300,7 +300,7 @@ is386: movl $2,%ecx # set MP
jmp initialize_secondary # all other CPUs call initialize_secondary
1:
#endif /* CONFIG_SMP */
- jmp start_kernel
+ jmp i386_start_kernel
/*
* We depend on ET to be correct. This checks for 287/387.
diff --git a/arch/i386/kernel/head32.c b/arch/i386/kernel/head32.c
new file mode 100644
index 0000000..3db0590
--- /dev/null
+++ b/arch/i386/kernel/head32.c
@@ -0,0 +1,14 @@
+/*
+ * linux/arch/i386/kernel/head32.c -- prepare to run common code
+ *
+ * Copyright (C) 2000 Andrea Arcangeli <andrea@xxxxxxx> SuSE
+ * Copyright (C) 2007 Eric Biederman <ebiederm@xxxxxxxxxxxx>
+ */
+
+#include <linux/init.h>
+#include <linux/start_kernel.h>
+
+void __init i386_start_kernel(void)
+{
+ start_kernel();
+}
--
1.5.1.1.181.g2de0
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
- Follow-Ups:
- [PATCH 11/12] i386: Move setup_idt from head.S to head32.c
- From: Eric W. Biederman
- [PATCH 11/12] i386: Move setup_idt from head.S to head32.c
- References:
- [PATCH 0/12] Early USB debug port and i386 boot cleanups
- From: Eric W. Biederman
- [PATCH 01/12] x86_64: Allow fixmaps to be used with the initial page table.
- From: Eric W. Biederman
- [PATCH 02/12] i386 head.S: Remove unnecessary use of %ebx as the boot cpu flag
- From: Eric W. Biederman
- [PATCH 03/12] i386 head.S: Always run the full set of paging state
- From: Eric W. Biederman
- [PATCH 04/12] i386 voyager: Use modern techniques to setup and teardown low identiy mappings.
- From: Eric W. Biederman
- [PATCH 05/12] i386: During page table initialization always set the leaf page table entries.
- From: Eric W. Biederman
- [PATCH 06/12] i386: Minimum cpu detection cleanups.
- From: Eric W. Biederman
- [PATCH 07/12] i386: Add missing !X86_PAE dependincy to the 2G/2G split.
- From: Eric W. Biederman
- [PATCH 08/12] i386: Convert the boot time page tables to the kernels native format.
- From: Eric W. Biederman
- [PATCH 09/12] i386/x86_64: EHCI usb debug port early printk support.
- From: Eric W. Biederman
- [PATCH 0/12] Early USB debug port and i386 boot cleanups
- Prev by Date: Re: [V9fs-developer] [PATCH] 9p: create separate 9p client interface
- Next by Date: Re: [patches] [PATCH] [8/35] x86_64: a memcpy that tries to reducecache pressure
- Previous by thread: [PATCH 09/12] i386/x86_64: EHCI usb debug port early printk support.
- Next by thread: [PATCH 11/12] i386: Move setup_idt from head.S to head32.c
- Index(es):
Relevant Pages
- [PATCH] Use linux/io.h instead of asm/io.h
... In preparation for moving check_signature, ... More majordomo info
at http://vger.kernel.org/majordomo-info.html ... Please read the FAQ at http://www.tux.org/lkml/
... (Linux-Kernel) - [PATCH 1/4] [NET] move dev_mc_discard from dev_mcast.c to dev.c
... this moving could make this non-global function static, ... and also remove
a function declaration in netdevice.h ... More majordomo info at http://vger.kernel.org/majordomo-info.html
... Please read the FAQ at http://www.tux.org/lkml/ ... (Linux-Kernel) - Re: + clocksource-add-generic-sched_clock.patch added to -mm tree
... I'm not moving the kernel/timer.c clocksource user back into ... More
majordomo info at http://vger.kernel.org/majordomo-info.html ... Please read the FAQ
at http://www.tux.org/lkml/ ... (Linux-Kernel) - Re: [PATCH 3/4] mm: move_page_tables{,_up}
... On Tue, 5 Jun 2007, Peter Zijlstra wrote: ... pages moving? ...
More majordomo info at http://vger.kernel.org/majordomo-info.html ... Please read the FAQ
at http://www.tux.org/lkml/ ... (Linux-Kernel) - [ANN] New location for Coin Collecting FAQ
... is moving to new URLs: ... This change is due to an agreement to transfer
the old domain, ... FAQ can presently be accessed at both the old and new locations, ...
web site address: www.telesphere.com ... (rec.collecting.coins)