summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile.inc3
-rw-r--r--src/acpi/acpi.c11
-rw-r--r--src/include/acpi/acpi.h1
3 files changed, 15 insertions, 0 deletions
diff --git a/Makefile.inc b/Makefile.inc
index 1b1e973d7f..090505e776 100644
--- a/Makefile.inc
+++ b/Makefile.inc
@@ -280,6 +280,9 @@ define asl_template
$(CONFIG_CBFS_PREFIX)/$(1).aml-file = $(obj)/$(1).aml
$(CONFIG_CBFS_PREFIX)/$(1).aml-type = raw
$(CONFIG_CBFS_PREFIX)/$(1).aml-compression = none
+ifeq ($(CONFIG_SOC_AMD_COMMON_BLOCK_LPC_SPI_DMA),y)
+$(CONFIG_CBFS_PREFIX)/$(1).aml-align = 64
+endif
cbfs-files-$(if $(2),$(2),y) += $(CONFIG_CBFS_PREFIX)/$(1).aml
-include $(obj)/$(1).d
$(obj)/$(1).aml: $(src)/mainboard/$(MAINBOARDDIR)/$(1).asl $(obj)/config.h
diff --git a/src/acpi/acpi.c b/src/acpi/acpi.c
index 78c3fd3b90..3bf57c6ff2 100644
--- a/src/acpi/acpi.c
+++ b/src/acpi/acpi.c
@@ -1577,6 +1577,17 @@ unsigned long __weak fw_cfg_acpi_tables(unsigned long start)
return 0;
}
+void preload_acpi_dsdt(void)
+{
+ const char *file = CONFIG_CBFS_PREFIX "/dsdt.aml";
+
+ if (!CONFIG(CBFS_PRELOAD))
+ return;
+
+ printk(BIOS_DEBUG, "Preloading %s\n", file);
+ cbfs_preload(file);
+}
+
unsigned long write_acpi_tables(unsigned long start)
{
unsigned long current;
diff --git a/src/include/acpi/acpi.h b/src/include/acpi/acpi.h
index 4f059bb947..4a958553e9 100644
--- a/src/include/acpi/acpi.h
+++ b/src/include/acpi/acpi.h
@@ -1215,6 +1215,7 @@ void acpi_create_einj(acpi_einj_t *einj, uintptr_t addr, u8 actions);
unsigned long fw_cfg_acpi_tables(unsigned long start);
/* These are implemented by the target port or north/southbridge. */
+void preload_acpi_dsdt(void);
unsigned long write_acpi_tables(unsigned long addr);
unsigned long acpi_fill_madt(unsigned long current);
unsigned long acpi_fill_ivrs_ioapic(acpi_ivrs_t *ivrs, unsigned long current);