summaryrefslogtreecommitdiff
path: root/src/arch
diff options
context:
space:
mode:
Diffstat (limited to 'src/arch')
-rw-r--r--src/arch/i386/boot/acpi.c3
-rw-r--r--src/arch/i386/include/arch/acpi.h3
2 files changed, 4 insertions, 2 deletions
diff --git a/src/arch/i386/boot/acpi.c b/src/arch/i386/boot/acpi.c
index 92338046c0..1612c804e4 100644
--- a/src/arch/i386/boot/acpi.c
+++ b/src/arch/i386/boot/acpi.c
@@ -212,6 +212,7 @@ void acpi_create_ssdt_generator(acpi_header_t *ssdt, char *oem_table_id)
int acpi_create_srat_lapic(acpi_srat_lapic_t *lapic, u8 node, u8 apic)
{
+ memset((void *)lapic, 0, sizeof(acpi_srat_lapic_t));
lapic->type=0;
lapic->length=sizeof(acpi_srat_lapic_t);
lapic->flags=1;
@@ -284,7 +285,7 @@ void acpi_create_slit(acpi_slit_t *slit)
header->length = sizeof(acpi_slit_t);
header->revision = 1;
-// current = acpi_fill_slit(current);
+ current = acpi_fill_slit(current);
/* recalculate length */
header->length= current - (unsigned long)slit;
diff --git a/src/arch/i386/include/arch/acpi.h b/src/arch/i386/include/arch/acpi.h
index d31517e518..4d2cedd10f 100644
--- a/src/arch/i386/include/arch/acpi.h
+++ b/src/arch/i386/include/arch/acpi.h
@@ -292,7 +292,8 @@ typedef struct acpi_facs {
unsigned long write_acpi_tables(unsigned long addr);
unsigned long acpi_fill_madt(unsigned long current);
unsigned long acpi_fill_mcfg(unsigned long current);
-unsigned long acpi_fill_srat(unsigned long current);
+unsigned long acpi_fill_srat(unsigned long current);
+unsigned long acpi_fill_slit(unsigned long current);
unsigned long acpi_fill_ssdt_generator(unsigned long current, char *oem_table_id);
void acpi_create_ssdt_generator(acpi_header_t *ssdt, char *oem_table_id);
void acpi_create_fadt(acpi_fadt_t *fadt,acpi_facs_t *facs,void *dsdt);