Skip to content

Commit

Permalink
x86: introduce kernel/head32.c
Browse files Browse the repository at this point in the history
Copy x86_64 and add a head32.c so we can start moving early
architecture initialization out of assembly.

[ Sam Ravnborg <sam@ravnborg.org>: updated it to x86 ]

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Cc: H. Peter Anvin <hpa@zytor.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
  • Loading branch information
Eric W. Biederman authored and Ingo Molnar committed Apr 17, 2008
1 parent 322850a commit 700efc1
Show file tree
Hide file tree
Showing 4 changed files with 19 additions and 6 deletions.
6 changes: 3 additions & 3 deletions arch/x86/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -159,9 +159,9 @@ KBUILD_AFLAGS += $(mflags-y)
###
# Kernel objects

head-y := arch/x86/kernel/head_$(BITS).o
head-$(CONFIG_X86_64) += arch/x86/kernel/head64.o
head-y += arch/x86/kernel/init_task.o
head-y := arch/x86/kernel/head_$(BITS).o
head-y += arch/x86/kernel/head$(BITS).o
head-y += arch/x86/kernel/init_task.o

libs-y += arch/x86/lib/

Expand Down
3 changes: 1 addition & 2 deletions arch/x86/kernel/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,7 @@
# Makefile for the linux kernel.
#

extra-y := head_$(BITS).o init_task.o vmlinux.lds
extra-$(CONFIG_X86_64) += head64.o
extra-y := head_$(BITS).o head$(BITS).o init_task.o vmlinux.lds

CPPFLAGS_vmlinux.lds += -U$(UTS_MACHINE)

Expand Down
14 changes: 14 additions & 0 deletions arch/x86/kernel/head32.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
/*
* linux/arch/i386/kernel/head32.c -- prepare to run common code
*
* Copyright (C) 2000 Andrea Arcangeli <andrea@suse.de> SuSE
* Copyright (C) 2007 Eric Biederman <ebiederm@xmission.com>
*/

#include <linux/init.h>
#include <linux/start_kernel.h>

void __init i386_start_kernel(void)
{
start_kernel();
}
2 changes: 1 addition & 1 deletion arch/x86/kernel/head_32.S
Original file line number Diff line number Diff line change
Expand Up @@ -450,7 +450,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.
Expand Down

0 comments on commit 700efc1

Please sign in to comment.