From d4b278c02c1da92219ebeb34204b9768934aeca3 Mon Sep 17 00:00:00 2001 From: Yinghai Lu Date: Wed, 4 Oct 2006 20:46:15 +0000 Subject: AMD Rev F support git-svn-id: svn://svn.coreboot.org/coreboot/trunk@2435 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1 --- src/arch/i386/boot/acpi.c | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) (limited to 'src/arch/i386/boot') diff --git a/src/arch/i386/boot/acpi.c b/src/arch/i386/boot/acpi.c index 3393b89fee..e1734d80e7 100644 --- a/src/arch/i386/boot/acpi.c +++ b/src/arch/i386/boot/acpi.c @@ -203,6 +203,31 @@ void acpi_create_srat(acpi_srat_t *srat) header->checksum = acpi_checksum((void *)srat, header->length); } +void acpi_create_slit(acpi_slit_t *slit) +{ + + acpi_header_t *header=&(slit->header); + unsigned long current=(unsigned long)slit+sizeof(acpi_slit_t); + + memset((void *)slit, 0, sizeof(acpi_slit_t)); + + /* fill out header fields */ + memcpy(header->signature, SLIT_NAME, 4); + memcpy(header->oem_id, OEM_ID, 6); + memcpy(header->oem_table_id, SLIT_TABLE, 8); + memcpy(header->asl_compiler_id, ASLC, 4); + + header->length = sizeof(acpi_slit_t); + header->revision = 1; + +// current = acpi_fill_slit(current); + + /* recalculate length */ + header->length= current - (unsigned long)slit; + + header->checksum = acpi_checksum((void *)slit, header->length); +} + void acpi_create_hpet(acpi_hpet_t *hpet) { #define HPET_ADDR 0xfed00000ULL -- cgit v1.2.3