blob: acfd0548b2be08d65dca106d21121b4945da7470 [file] [log] [blame]
Stefan Reinauer9616f3c2015-04-29 10:45:22 -07001ifeq ($(CONFIG_SOC_INTEL_COMMON),y)
Stefan Reinaueraae53ab2015-04-27 14:03:57 -07002
Subrata Banik9a0245a2017-02-22 14:22:44 +05303subdirs-y += basecode/
4subdirs-y += block/
5
Lee Leahy4c18de22016-07-30 07:17:13 -07006bootblock-y += util.c
7
Duncan Laurie8a14c392016-06-07 13:40:11 -07008verstage-$(CONFIG_SOC_INTEL_COMMON_LPSS_I2C) += lpss_i2c.c
Aaron Durbinb66d6732015-10-07 16:10:43 -05009verstage-$(CONFIG_SOC_INTEL_COMMON_RESET) += reset.c
10
Subrata Banike4a85372016-07-24 00:36:12 +053011bootblock-$(CONFIG_SOC_INTEL_COMMON_RESET) += reset.c
12bootblock-$(CONFIG_SOC_INTEL_COMMON_LPSS_I2C) += lpss_i2c.c
13
Duncan Lauried8c4f2b2014-04-22 10:46:06 -070014romstage-$(CONFIG_CACHE_MRC_SETTINGS) += mrc_cache.c
Duncan Laurie8a14c392016-06-07 13:40:11 -070015romstage-$(CONFIG_SOC_INTEL_COMMON_LPSS_I2C) += lpss_i2c.c
Lee Leahy14ecb542015-02-09 21:16:14 -080016romstage-$(CONFIG_SOC_INTEL_COMMON_RESET) += reset.c
Lee Leahy94b856e2015-10-15 12:07:03 -070017romstage-y += util.c
Pratik Prajapatib90b94d2015-09-11 13:51:38 -070018romstage-$(CONFIG_MMA) += mma.c
Barnali Sarkare13b7752017-02-21 16:24:49 +053019romstage-y += smbios.c
Lee Leahy0946ec32015-04-20 15:24:54 -070020
Lee Leahy4c18de22016-07-30 07:17:13 -070021postcar-y += util.c
Furquan Shaikh566fedd2016-10-28 14:55:46 -070022postcar-$(CONFIG_SOC_INTEL_COMMON_RESET) += reset.c
Lee Leahy4c18de22016-07-30 07:17:13 -070023
Lee Leahy0946ec32015-04-20 15:24:54 -070024ramstage-y += hda_verb.c
25ramstage-$(CONFIG_CACHE_MRC_SETTINGS) += mrc_cache.c
26ramstage-$(CONFIG_CACHE_MRC_SETTINGS) += nvm.c
Furquan Shaikhd0c000522016-11-21 09:19:53 -080027ramstage-$(CONFIG_SOC_INTEL_COMMON_SPI_FLASH_PROTECT) += spi_flash.c
Duncan Laurie8a14c392016-06-07 13:40:11 -070028ramstage-$(CONFIG_SOC_INTEL_COMMON_LPSS_I2C) += lpss_i2c.c
Lee Leahy0946ec32015-04-20 15:24:54 -070029ramstage-$(CONFIG_SOC_INTEL_COMMON_RESET) += reset.c
Lee Leahy94b856e2015-10-15 12:07:03 -070030ramstage-y += util.c
Pratik Prajapatib90b94d2015-09-11 13:51:38 -070031ramstage-$(CONFIG_MMA) += mma.c
Duncan Laurie63ebc802015-09-08 16:09:28 -070032ramstage-$(CONFIG_SOC_INTEL_COMMON_ACPI_WAKE_SOURCE) += acpi_wake_source.c
Andrey Petrov060b2152016-05-13 15:27:42 -070033ramstage-y += vbt.c
Andrey Petrovdc4ae112016-05-12 19:10:11 -070034ramstage-$(CONFIG_SOC_INTEL_COMMON_GFX_OPREGION) += opregion.c
Hannah Williamsf8daa372016-04-18 13:40:04 -070035ramstage-$(CONFIG_SOC_INTEL_COMMON_ACPI) += ./acpi/acpi.c
Aaron Durbinc14a1a92016-06-28 15:41:07 -050036ramstage-$(CONFIG_SOC_INTEL_COMMON_NHLT) += nhlt.c
Stefan Reinaueraae53ab2015-04-27 14:03:57 -070037
Hannah Williamsba0fc472016-05-04 18:15:49 -070038smm-$(CONFIG_SOC_INTEL_COMMON_SMI) += smihandler.c
39
Alexandru Gagniucbc140cf2015-08-28 14:28:35 -040040# Create and add the MRC cache to the cbfs image
41ifneq ($(CONFIG_CHROMEOS),y)
42$(obj)/mrc.cache: $(obj)/config.h
43 dd if=/dev/zero count=1 \
44 bs=$(shell printf "%d" $(CONFIG_MRC_SETTINGS_CACHE_SIZE) ) | \
45 tr '\000' '\377' > $@
46
47cbfs-files-$(CONFIG_CACHE_MRC_SETTINGS) += mrc.cache
48mrc.cache-file := $(obj)/mrc.cache
49mrc.cache-position := $(CONFIG_MRC_SETTINGS_CACHE_BASE)
50mrc.cache-type := mrc_cache
51endif
52
Pratik Prajapatib90b94d2015-09-11 13:51:38 -070053ifeq ($(CONFIG_MMA),y)
54MMA_BLOBS_PATH = $(call strip_quotes,$(CONFIG_MMA_BLOBS_PATH))
55MMA_TEST_NAMES = $(notdir $(wildcard $(MMA_BLOBS_PATH)/tests/*))
56MMA_TEST_CONFIG_NAMES = $(notdir $(wildcard $(MMA_BLOBS_PATH)/configs/*))
57
58#
59# MMA_CBFS_template is the template to be expanded by eval
60# where $(1) is file name
61# $(2) is file path
62# $(3) is file type, efi for test names (all .EFI files under $(MMA_BLOBS_PATH)/tests )
63# , mma for test param (all .BIN files under $(MMA_BLOBS_PATH)/configs/<test name>)
64#
65# $(MMA_BLOBS_PATH)/tests/<testX>.efi has coresponding test params
66# at $(MMA_BLOBS_PATH)/configs/<testX>/<XYZ>.bin
67#
68
69
70define MMA_CBFS_template =
71 cbfs-files-y += $(1)
72 $(1)-file := $(MMA_BLOBS_PATH)/$(2)/$(1)
73 $(1)-type := $(3)
74endef
75
76#
77# following loop calls MMA_CBFS_template for each .EFI file under $(MMA_BLOBS_PATH)/tests with type = efi
78#
79$(foreach mma_test,$(MMA_TEST_NAMES),$(eval $(call MMA_CBFS_template,$(mma_test),tests,efi)))
80
81
82#
83# following nested loops calls MMA_CBFS_template for each .BIN file under each MMA_TEST_CONFIG_NAMES
84#
85# foreach <testX> do following
86# foreach <XYZ>.bin in <testX> do following
87# call MMA_CBFS_template for each <XYZ>.bin under current <testX> with type = mma
88#
89
90$(foreach mma_test, $(MMA_TEST_CONFIG_NAMES),\
91 $(eval $(foreach mma_config,$(notdir $(wildcard $(MMA_BLOBS_PATH)/configs/$(mma_test)/*)),\
92 $(eval $(call MMA_CBFS_template,$(mma_config),configs/$(mma_test),mma)))))
93
94endif
95
Andrey Petrov060b2152016-05-13 15:27:42 -070096cbfs-files-$(CONFIG_ADD_VBT_DATA_FILE) += vbt.bin
97vbt.bin-file := $(call strip_quotes,$(CONFIG_VBT_FILE))
98vbt.bin-type := raw
99
Stefan Reinaueraae53ab2015-04-27 14:03:57 -0700100endif