1# SPDX-License-Identifier: GPL-2.0+
2#
3# (C) Copyright 2002-2006
4# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
5
6obj-y	+= bdinfo.o
7
8ifndef CONFIG_$(PHASE_)X86_64
9obj-y += bios.o
10obj-y += bios_asm.o
11obj-y += bios_interrupts.o
12endif
13
14ifndef CONFIG_XPL_BUILD
15obj-$(CONFIG_X86_32BIT_INIT) += string.o
16endif
17
18ifndef CONFIG_XPL_BUILD
19obj-$(CONFIG_CMD_BOOTM) += bootm.o
20endif
21obj-y	+= cmd_boot.o
22obj-$(CONFIG_$(PHASE_)COREBOOT_SYSINFO)	+= coreboot/
23obj-$(CONFIG_SEABIOS) += coreboot_table.o
24obj-y	+= early_cmos.o
25obj-y	+= e820.o
26obj-y	+= init_helpers.o
27obj-y	+= interrupts.o
28obj-y	+= lpc-uclass.o
29ifndef CONFIG_XPL_BUILD
30obj-y	+= mpspec.o
31endif
32obj-$(CONFIG_$(PHASE_)ACPIGEN) += acpi_nhlt.o
33obj-y	+= northbridge-uclass.o
34obj-$(CONFIG_I8259_PIC) += i8259.o
35obj-$(CONFIG_I8254_TIMER) += i8254.o
36obj-$(CONFIG_PINCTRL_ICH6) += pinctrl_ich6.o
37obj-y	+= pirq_routing.o
38obj-y	+= relocate.o
39obj-y += physmem.o
40obj-$(CONFIG_INTEL_MID) += pmu.o
41obj-$(CONFIG_X86_RAMTEST) += ramtest.o
42obj-$(CONFIG_INTEL_MID) += scu.o
43obj-y	+= sections.o
44obj-y += sfi.o
45obj-y	+= acpi.o
46obj-$(CONFIG_HAVE_ACPI_RESUME) += acpi_s3.o
47ifndef CONFIG_QEMU
48obj-y += acpigen.o
49obj-$(CONFIG_$(PHASE_)GENERATE_ACPI_TABLE) += acpi_table.o
50endif
51obj-y	+= tables.o
52ifndef CONFIG_XPL_BUILD
53obj-$(CONFIG_ZBOOT) += zimage.o
54endif
55obj-$(CONFIG_USE_HOB) += hob.o
56ifndef CONFIG_TPL_BUILD
57obj-$(CONFIG_ENABLE_MRC_CACHE) += mrccache.o
58obj-$(CONFIG_HAVE_FSP) += fsp/
59obj-$(CONFIG_FSP_VERSION1) += fsp1/
60obj-$(CONFIG_FSP_VERSION2) += fsp2/
61endif
62
63ifdef CONFIG_XPL_BUILD
64ifdef CONFIG_TPL_BUILD
65obj-y += tpl.o
66else
67obj-y += spl.o
68endif
69endif
70
71lib-$(CONFIG_USE_PRIVATE_LIBGCC) += div64.o
72
73obj-$(CONFIG_EFI_APP_32BIT) += crt0_ia32_efi.o reloc_ia32_efi.o
74obj-$(CONFIG_EFI_APP_64BIT) += crt0_x86_64_efi.o reloc_x86_64_efi.o
75
76ifneq ($(CONFIG_EFI_STUB),)
77
78CFLAGS_REMOVE_reloc_ia32_efi.o += -mregparm=3
79CFLAGS_reloc_ia32_efi.o += -fpic -fshort-wchar
80
81# When building for 64-bit we must remove the i386-specific flags
82CFLAGS_REMOVE_reloc_x86_64_efi.o += -mregparm=3 -march=i386 -m32
83CFLAGS_reloc_x86_64_efi.o += -fpic -fshort-wchar -m64
84
85AFLAGS_REMOVE_crt0_x86_64_efi.o += -mregparm=3 -march=i386 -m32
86AFLAGS_crt0_x86_64_efi.o += -fpic -fshort-wchar -m64
87
88extra-$(CONFIG_EFI_STUB_32BIT) += crt0_ia32_efi.o reloc_ia32_efi.o
89extra-$(CONFIG_EFI_STUB_64BIT) += crt0_x86_64_efi.o reloc_x86_64_efi.o
90
91endif
92
93ifdef CONFIG_EFI_STUB
94
95ifeq ($(CONFIG_$(PHASE_)X86_64),)
96extra-y += $(EFI_CRT0) $(EFI_RELOC)
97endif
98
99else
100
101ifndef CONFIG_XPL_BUILD
102ifneq ($(CONFIG_CMD_BOOTEFI_SELFTEST)$(CONFIG_BOOTEFI_HELLO_COMPILE),)
103extra-y += $(EFI_CRT0) $(EFI_RELOC)
104endif
105endif
106
107endif
108