bc140cf111
The code in mrc_cache.c doesn't check for the presence of 'mrc.cache', and just returns hardcoded value for he location of he MRC cache. This becomes a problem when there is a CBFS file at the same location, which can get overwritten. A CBFS file is created to cover this region so that nothing can be added there. This has the advantage of creating a build time error if another cbfs file is hardcoded over the same region. The default location of the MRC cache is also moved to 4G - 128K to ensure that it defaults to something within CBFS. Change-Id: Ic029c182f5a2180cb680e09b25165ee303a448a3 Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com> Reviewed-on: http://review.coreboot.org/11440 Tested-by: build bot (Jenkins) Reviewed-by: Aaron Durbin <adurbin@chromium.org>
33 lines
1.2 KiB
Makefile
33 lines
1.2 KiB
Makefile
ifeq ($(CONFIG_SOC_INTEL_COMMON),y)
|
|
|
|
romstage-$(CONFIG_CACHE_MRC_SETTINGS) += mrc_cache.c
|
|
romstage-$(CONFIG_SOC_INTEL_COMMON_FSP_RAM_INIT) += raminit.c
|
|
romstage-$(CONFIG_SOC_INTEL_COMMON_RESET) += reset.c
|
|
romstage-$(CONFIG_SOC_INTEL_COMMON_FSP_ROMSTAGE) += romstage.c
|
|
romstage-$(CONFIG_SOC_INTEL_COMMON_STACK) += stack.c
|
|
romstage-$(CONFIG_SOC_INTEL_COMMON_STAGE_CACHE) += stage_cache.c
|
|
romstage-$(CONFIG_PLATFORM_USES_FSP1_1) += util.c
|
|
|
|
ramstage-$(CONFIG_PLATFORM_USES_FSP1_1) += fsp_ramstage.c
|
|
ramstage-y += hda_verb.c
|
|
ramstage-$(CONFIG_CACHE_MRC_SETTINGS) += mrc_cache.c
|
|
ramstage-$(CONFIG_CACHE_MRC_SETTINGS) += nvm.c
|
|
ramstage-$(CONFIG_SOC_INTEL_COMMON_RESET) += reset.c
|
|
ramstage-$(CONFIG_SOC_INTEL_COMMON_STAGE_CACHE) += stage_cache.c
|
|
ramstage-$(CONFIG_PLATFORM_USES_FSP1_1) += util.c
|
|
ramstage-$(CONFIG_GOP_SUPPORT) += vbt.c
|
|
|
|
# Create and add the MRC cache to the cbfs image
|
|
ifneq ($(CONFIG_CHROMEOS),y)
|
|
$(obj)/mrc.cache: $(obj)/config.h
|
|
dd if=/dev/zero count=1 \
|
|
bs=$(shell printf "%d" $(CONFIG_MRC_SETTINGS_CACHE_SIZE) ) | \
|
|
tr '\000' '\377' > $@
|
|
|
|
cbfs-files-$(CONFIG_CACHE_MRC_SETTINGS) += mrc.cache
|
|
mrc.cache-file := $(obj)/mrc.cache
|
|
mrc.cache-position := $(CONFIG_MRC_SETTINGS_CACHE_BASE)
|
|
mrc.cache-type := mrc_cache
|
|
endif
|
|
|
|
endif
|