summaryrefslogtreecommitdiff
path: root/arch/x86
diff options
context:
space:
mode:
Diffstat (limited to 'arch/x86')
-rw-r--r--arch/x86/lib/acpi_table.c26
1 files changed, 10 insertions, 16 deletions
diff --git a/arch/x86/lib/acpi_table.c b/arch/x86/lib/acpi_table.c
index 1c57094..ffb4678 100644
--- a/arch/x86/lib/acpi_table.c
+++ b/arch/x86/lib/acpi_table.c
@@ -376,13 +376,11 @@ u32 write_acpi_tables(u32 start)
debug("ACPI: * DSDT\n");
dsdt = (struct acpi_table_header *)current;
memcpy(dsdt, &AmlCode, sizeof(struct acpi_table_header));
- if (dsdt->length >= sizeof(struct acpi_table_header)) {
- current += sizeof(struct acpi_table_header);
- memcpy((char *)current,
- (char *)&AmlCode + sizeof(struct acpi_table_header),
- dsdt->length - sizeof(struct acpi_table_header));
- current += dsdt->length - sizeof(struct acpi_table_header);
- }
+ current += sizeof(struct acpi_table_header);
+ memcpy((char *)current,
+ (char *)&AmlCode + sizeof(struct acpi_table_header),
+ dsdt->length - sizeof(struct acpi_table_header));
+ current += dsdt->length - sizeof(struct acpi_table_header);
current = ALIGN(current, 16);
debug("ACPI: * FADT\n");
@@ -395,20 +393,16 @@ u32 write_acpi_tables(u32 start)
debug("ACPI: * MADT\n");
madt = (struct acpi_madt *)current;
acpi_create_madt(madt);
- if (madt->header.length > sizeof(struct acpi_madt)) {
- current += madt->header.length;
- acpi_add_table(rsdp, madt);
- }
+ current += madt->header.length;
+ acpi_add_table(rsdp, madt);
current = ALIGN(current, 16);
debug("ACPI: * MCFG\n");
mcfg = (struct acpi_mcfg *)current;
acpi_create_mcfg(mcfg);
- if (mcfg->header.length > sizeof(struct acpi_mcfg)) {
- current += mcfg->header.length;
- current = ALIGN(current, 16);
- acpi_add_table(rsdp, mcfg);
- }
+ current += mcfg->header.length;
+ acpi_add_table(rsdp, mcfg);
+ current = ALIGN(current, 16);
debug("current = %x\n", current);