x86: parameterize asl_template for CBFS inclusion
The asl_template previously unconditionally included dsdt.aml. However, COMPILE_IN_DSDT=y results in the dsdt.aml being linked directly into ramstage. Thus the information is duplicated. The inclusion of this file unconditionally throws some errors as certain assets need to be included in CBFS. However, as there isn't fine-grained ordering control in how files are added fixed resource requirements for other assets collide result in failure to build. To remedy both things, provide a 2nd argument to asl_template which defaults to 'y' for CBFS addition. In the COMPILE_IN_DSDT=y case pass 'n' so that dsdt.aml is no longer added. BUG=chrome-os-partner:43419 BRANCH=None TEST=For glados: Built with COMPILE_IN_DSDT=y. dsdt.aml not included. Built with COMPILE_IN_DSDT=n. dsdt.aml was included. Original-Change-Id: I4767e5be2915c1732251fe415017f30314c5efc9 Original-Signed-off-by: Aaron Durbin <adurbin@chromium.org> Original-Reviewed-on: https://chromium-review.googlesource.com/289840 Original-Reviewed-by: Duncan Laurie <dlaurie@chromium.org> Change-Id: Id1828627ba0a034eb05b2fe23be76e19f3040444 Signed-off-by: Aaron Durbin <adurbin@chromium.org> Reviewed-on: http://review.coreboot.org/11166 Reviewed-by: Patrick Georgi <pgeorgi@google.com> Tested-by: build bot (Jenkins)
This commit is contained in:
parent
dd2d3f933a
commit
ab454c6b71
|
@ -188,11 +188,13 @@ endef
|
||||||
|
|
||||||
#######################################################################
|
#######################################################################
|
||||||
# Add handler to compile ACPI's ASL
|
# Add handler to compile ACPI's ASL
|
||||||
|
# arg1: base file name
|
||||||
|
# arg2: y or n for including in cbfs. defaults to y
|
||||||
define asl_template
|
define asl_template
|
||||||
$(call strip_quotes,$(CONFIG_CBFS_PREFIX))/$(1).aml-file = $(obj)/$(1).aml
|
$(call strip_quotes,$(CONFIG_CBFS_PREFIX))/$(1).aml-file = $(obj)/$(1).aml
|
||||||
$(call strip_quotes,$(CONFIG_CBFS_PREFIX))/$(1).aml-type = raw
|
$(call strip_quotes,$(CONFIG_CBFS_PREFIX))/$(1).aml-type = raw
|
||||||
$(call strip_quotes,$(CONFIG_CBFS_PREFIX))/$(1).aml-compression = none
|
$(call strip_quotes,$(CONFIG_CBFS_PREFIX))/$(1).aml-compression = none
|
||||||
cbfs-files-y += $(call strip_quotes,$(CONFIG_CBFS_PREFIX))/$(1).aml
|
cbfs-files-$(if $(2),$(2),y) += $(call strip_quotes,$(CONFIG_CBFS_PREFIX))/$(1).aml
|
||||||
$(obj)/$(1).aml: $(src)/mainboard/$(MAINBOARDDIR)/$(1).asl $(obj)/config.h
|
$(obj)/$(1).aml: $(src)/mainboard/$(MAINBOARDDIR)/$(1).asl $(obj)/config.h
|
||||||
@printf " IASL $$(subst $(top)/,,$$(@))\n"
|
@printf " IASL $$(subst $(top)/,,$$(@))\n"
|
||||||
$(CC_ramstage) -x assembler-with-cpp -E -MMD -MT $$(@) $$(CPPFLAGS_ramstage) -D__ACPI__ -P -include $(src)/include/kconfig.h -I$(obj) -I$(src) -I$(src)/include -I$(src)/arch/$(ARCHDIR-$(ARCH-ramstage-y))/include -I$(src)/mainboard/$(MAINBOARDDIR) $$< -o $$@
|
$(CC_ramstage) -x assembler-with-cpp -E -MMD -MT $$(@) $$(CPPFLAGS_ramstage) -D__ACPI__ -P -include $(src)/include/kconfig.h -I$(obj) -I$(src) -I$(src)/include -I$(src)/arch/$(ARCHDIR-$(ARCH-ramstage-y))/include -I$(src)/mainboard/$(MAINBOARDDIR) $$< -o $$@
|
||||||
|
|
|
@ -283,7 +283,11 @@ ramstage-srcs += src/mainboard/$(MAINBOARDDIR)/reset.c
|
||||||
endif
|
endif
|
||||||
ifeq ($(CONFIG_HAVE_ACPI_TABLES),y)
|
ifeq ($(CONFIG_HAVE_ACPI_TABLES),y)
|
||||||
ramstage-srcs += src/mainboard/$(MAINBOARDDIR)/acpi_tables.c
|
ramstage-srcs += src/mainboard/$(MAINBOARDDIR)/acpi_tables.c
|
||||||
|
ifeq ($(CONFIG_COMPILE_IN_DSDT),y)
|
||||||
|
$(eval $(call asl_template,dsdt,n))
|
||||||
|
else
|
||||||
$(eval $(call asl_template,dsdt))
|
$(eval $(call asl_template,dsdt))
|
||||||
|
endif
|
||||||
ifneq ($(wildcard src/mainboard/$(MAINBOARDDIR)/fadt.c),)
|
ifneq ($(wildcard src/mainboard/$(MAINBOARDDIR)/fadt.c),)
|
||||||
ramstage-srcs += src/mainboard/$(MAINBOARDDIR)/fadt.c
|
ramstage-srcs += src/mainboard/$(MAINBOARDDIR)/fadt.c
|
||||||
endif
|
endif
|
||||||
|
|
Loading…
Reference in New Issue