5b83683f32
This patch adds basic runtime services support for EFI x86_64 system. The main file of the patch is the addition of efi_64.c for x86_64. This file is modeled after the EFI IA32 avatar. EFI runtime services initialization are implemented in efi_64.c. Some x86_64 specifics are worth noting here. On x86_64, parameters passed to EFI firmware services need to follow the EFI calling convention. For this purpose, a set of functions named efi_call<x> (<x> is the number of parameters) are implemented. EFI function calls are wrapped before calling the firmware service. The duplicated code between efi_32.c and efi_64.c is placed in efi.c to remove them from efi_32.c. Signed-off-by: Chandramouli Narayanan <mouli@linux.intel.com> Signed-off-by: Huang Ying <ying.huang@intel.com> Cc: Andi Kleen <ak@suse.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
50 lines
1.7 KiB
Text
50 lines
1.7 KiB
Text
#
|
|
# Makefile for the linux kernel.
|
|
#
|
|
|
|
extra-y := head_64.o head64.o init_task.o vmlinux.lds
|
|
CPPFLAGS_vmlinux.lds += -Ux86_64
|
|
|
|
obj-y := process_64.o signal_64.o entry_64.o traps_64.o irq_64.o \
|
|
time_64.o ioport_64.o ldt.o setup_64.o i8259_64.o sys_x86_64.o \
|
|
x8664_ksyms_64.o i387_64.o syscall_64.o vsyscall_64.o \
|
|
setup64.o bootflag.o e820_64.o reboot_64.o quirks.o i8237.o \
|
|
pci-dma_64.o pci-nommu_64.o alternative.o hpet.o tsc_64.o bugs_64.o \
|
|
i8253.o io_delay.o rtc.o
|
|
|
|
obj-y += ptrace.o
|
|
obj-y += ds.o
|
|
obj-y += step.o
|
|
|
|
obj-$(CONFIG_IA32_EMULATION) += tls.o
|
|
obj-$(CONFIG_STACKTRACE) += stacktrace.o
|
|
obj-y += cpu/
|
|
obj-y += acpi/
|
|
obj-$(CONFIG_X86_MSR) += msr.o
|
|
obj-$(CONFIG_MICROCODE) += microcode.o
|
|
obj-$(CONFIG_X86_CPUID) += cpuid.o
|
|
obj-$(CONFIG_SMP) += smp_64.o smpboot_64.o trampoline_64.o tsc_sync.o
|
|
obj-y += apic_64.o nmi_64.o
|
|
obj-y += io_apic_64.o mpparse_64.o genapic_64.o genapic_flat_64.o
|
|
obj-$(CONFIG_KEXEC) += machine_kexec_64.o relocate_kernel_64.o crash.o
|
|
obj-$(CONFIG_CRASH_DUMP) += crash_dump_64.o
|
|
obj-$(CONFIG_PM) += suspend_64.o
|
|
obj-$(CONFIG_HIBERNATION) += suspend_asm_64.o
|
|
obj-$(CONFIG_EARLY_PRINTK) += early_printk.o
|
|
obj-$(CONFIG_GART_IOMMU) += pci-gart_64.o aperture_64.o
|
|
obj-$(CONFIG_CALGARY_IOMMU) += pci-calgary_64.o tce_64.o
|
|
obj-$(CONFIG_SWIOTLB) += pci-swiotlb_64.o
|
|
obj-$(CONFIG_KPROBES) += kprobes_64.o
|
|
obj-$(CONFIG_X86_PM_TIMER) += pmtimer_64.o
|
|
obj-$(CONFIG_X86_VSMP) += vsmp_64.o
|
|
obj-$(CONFIG_K8_NB) += k8.o
|
|
obj-$(CONFIG_AUDIT) += audit_64.o
|
|
obj-$(CONFIG_EFI) += efi.o efi_64.o efi_stub_64.o
|
|
|
|
obj-$(CONFIG_MODULES) += module_64.o
|
|
obj-$(CONFIG_PCI) += early-quirks.o
|
|
|
|
obj-y += topology.o
|
|
obj-y += pcspeaker.o
|
|
|
|
CFLAGS_vsyscall_64.o := $(PROFILING) -g0
|