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