Selaa lähdekoodia

x86, realmode: flattened rm hierachy

Simplified hierarchy under rm directory to a flat
directory because it is not anymore really justified
to have own directory for wakeup code. It only adds
more complexity.

Signed-off-by: Jarkko Sakkinen <jarkko.sakkinen@intel.com>
Link: http://lkml.kernel.org/r/1336501366-28617-20-git-send-email-jarkko.sakkinen@intel.com
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
Jarkko Sakkinen 13 vuotta sitten
vanhempi
commit
c4845474a0

+ 1 - 1
arch/x86/kernel/acpi/sleep.c

@@ -16,7 +16,7 @@
 #include <asm/cacheflush.h>
 #include <asm/realmode.h>
 
-#include "../../realmode/rm/wakeup/wakeup.h"
+#include "../../realmode/rm/wakeup.h"
 #include "sleep.h"
 
 unsigned long acpi_realmode_flags;

+ 13 - 7
arch/x86/realmode/rm/Makefile

@@ -7,21 +7,26 @@
 #
 #
 
-subdir- := wakeup
-
 always := realmode.bin
 
 realmode-y			+= header.o
 realmode-y			+= trampoline_$(BITS).o
 realmode-y			+= stack.o
 realmode-$(CONFIG_X86_32)	+= reboot_32.o
-realmode-$(CONFIG_ACPI_SLEEP)	+= wakeup/wakeup.o
+realmode-$(CONFIG_ACPI_SLEEP)	+= $(wakeup-objs)
+
+wakeup-objs	:= wakeup_asm.o wakemain.o video-mode.o
+wakeup-objs	+= copy.o bioscall.o regs.o
+# The link order of the video-*.o modules can matter.  In particular,
+# video-vga.o *must* be listed first, followed by video-vesa.o.
+# Hardware-specific drivers should follow in the order they should be
+# probed, and video-bios.o should typically be last.
+wakeup-objs	+= video-vga.o
+wakeup-objs	+= video-vesa.o
+wakeup-objs	+= video-bios.o
 
 targets	+= $(realmode-y)
 
-$(obj)/wakeup/wakeup.o: FORCE
-	$(Q)$(MAKE) $(build)=$(obj)/wakeup $@
-
 REALMODE_OBJS = $(addprefix $(obj)/,$(realmode-y))
 
 sed-pasyms := -n -r -e 's/^([0-9a-fA-F]+) [ABCDGRSTVW] (.+)$$/pa_\2 = \2;/p'
@@ -55,7 +60,8 @@ $(obj)/realmode.relocs: $(obj)/realmode.elf FORCE
 
 # How to compile the 16-bit code.  Note we always compile for -march=i386,
 # that way we can complain to the user if the CPU is insufficient.
-KBUILD_CFLAGS	:= $(LINUXINCLUDE) -m32 -g -Os -D_SETUP -D__KERNEL__ \
+KBUILD_CFLAGS	:= $(LINUXINCLUDE) -m32 -g -Os -D_SETUP -D__KERNEL__ -D_WAKEUP \
+		   -I$(srctree)/arch/x86/boot \
 		   -DDISABLE_BRANCH_PROFILING \
 		   -Wall -Wstrict-prototypes \
 		   -march=i386 -mregparm=3 \

+ 1 - 0
arch/x86/realmode/rm/bioscall.S

@@ -0,0 +1 @@
+#include "../../boot/bioscall.S"

+ 1 - 0
arch/x86/realmode/rm/copy.S

@@ -0,0 +1 @@
+#include "../../boot/copy.S"

+ 1 - 0
arch/x86/realmode/rm/regs.c

@@ -0,0 +1 @@
+#include "../../boot/regs.c"

+ 1 - 0
arch/x86/realmode/rm/video-bios.c

@@ -0,0 +1 @@
+#include "../../boot/video-bios.c"

+ 1 - 0
arch/x86/realmode/rm/video-mode.c

@@ -0,0 +1 @@
+#include "../../boot/video-mode.c"

+ 1 - 0
arch/x86/realmode/rm/video-vesa.c

@@ -0,0 +1 @@
+#include "../../boot/video-vesa.c"

+ 1 - 0
arch/x86/realmode/rm/video-vga.c

@@ -0,0 +1 @@
+#include "../../boot/video-vga.c"

+ 0 - 0
arch/x86/realmode/rm/wakeup/wakemain.c → arch/x86/realmode/rm/wakemain.c


+ 0 - 0
arch/x86/realmode/rm/wakeup/wakeup.h → arch/x86/realmode/rm/wakeup.h


+ 0 - 3
arch/x86/realmode/rm/wakeup/.gitignore

@@ -1,3 +0,0 @@
-wakeup.bin
-wakeup.elf
-wakeup.lds

+ 0 - 33
arch/x86/realmode/rm/wakeup/Makefile

@@ -1,33 +0,0 @@
-#
-# arch/x86/kernel/acpi/realmode/Makefile
-#
-# This file is subject to the terms and conditions of the GNU General Public
-# License.  See the file "COPYING" in the main directory of this archive
-# for more details.
-#
-
-always		:= wakeup.o
-
-wakeup-y	+= wakeup_asm.o wakemain.o video-mode.o
-wakeup-y	+= copy.o bioscall.o regs.o
-
-# The link order of the video-*.o modules can matter.  In particular,
-# video-vga.o *must* be listed first, followed by video-vesa.o.
-# Hardware-specific drivers should follow in the order they should be
-# probed, and video-bios.o should typically be last.
-wakeup-y	+= video-vga.o
-wakeup-y	+= video-vesa.o
-wakeup-y	+= video-bios.o
-
-targets		+= $(wakeup-y)
-
-WAKEUP_OBJS = $(addprefix $(obj)/,$(wakeup-y))
-
-LDFLAGS_wakeup.o := -m elf_i386 -r
-$(obj)/wakeup.o: $(WAKEUP_OBJS) FORCE
-	$(call if_changed,ld)
-
-bootsrc := $(src)/../../../boot
-
-ccflags-y += -D_WAKEUP -I$(srctree)/$(bootsrc)
-asflags-y += -D_WAKEUP -I$(srctree)/$(bootsrc)

+ 0 - 1
arch/x86/realmode/rm/wakeup/bioscall.S

@@ -1 +0,0 @@
-#include "../../../boot/bioscall.S"

+ 0 - 1
arch/x86/realmode/rm/wakeup/copy.S

@@ -1 +0,0 @@
-#include "../../../boot/copy.S"

+ 0 - 1
arch/x86/realmode/rm/wakeup/regs.c

@@ -1 +0,0 @@
-#include "../../../boot/regs.c"

+ 0 - 1
arch/x86/realmode/rm/wakeup/video-bios.c

@@ -1 +0,0 @@
-#include "../../../boot/video-bios.c"

+ 0 - 1
arch/x86/realmode/rm/wakeup/video-mode.c

@@ -1 +0,0 @@
-#include "../../../boot/video-mode.c"

+ 0 - 1
arch/x86/realmode/rm/wakeup/video-vesa.c

@@ -1 +0,0 @@
-#include "../../../boot/video-vesa.c"

+ 0 - 1
arch/x86/realmode/rm/wakeup/video-vga.c

@@ -1 +0,0 @@
-#include "../../../boot/video-vga.c"

+ 1 - 1
arch/x86/realmode/rm/wakeup/wakeup_asm.S → arch/x86/realmode/rm/wakeup_asm.S

@@ -7,7 +7,7 @@
 #include <asm/page_types.h>
 #include <asm/pgtable_types.h>
 #include <asm/processor-flags.h>
-#include "../realmode.h"
+#include "realmode.h"
 #include "wakeup.h"
 
 	.code16