From ae60855f918dfc7f3f560528296fdd2d4b4ca791 Mon Sep 17 00:00:00 2001 From: Myles Watson Date: Fri, 9 Apr 2010 03:41:23 +0000 Subject: Copy acpi blobs in two parts to make sure gcc does the right thing. Signed-off-by: Myles Watson Acked-by: Stefan Reinauer git-svn-id: svn://svn.coreboot.org/coreboot/trunk@5384 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1 --- src/northbridge/amd/amdfam10/amdfam10_acpi.c | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) (limited to 'src/northbridge') diff --git a/src/northbridge/amd/amdfam10/amdfam10_acpi.c b/src/northbridge/amd/amdfam10/amdfam10_acpi.c index 34d5db5511..ba4c36bee4 100644 --- a/src/northbridge/amd/amdfam10/amdfam10_acpi.c +++ b/src/northbridge/amd/amdfam10/amdfam10_acpi.c @@ -268,7 +268,7 @@ void update_ssdt(void *ssdt) } -void update_sspr(void *sspr, u32 nodeid, u32 cpuindex) +static void update_sspr(void *sspr, u32 nodeid, u32 cpuindex) { u8 *CPU; u8 *CPUIN; @@ -291,7 +291,7 @@ void update_sspr(void *sspr, u32 nodeid, u32 cpuindex) CONTROL = sspr + 0x8d; STATUS = sspr + 0x8f; - sprintf(CPU, "%02x", (u8)cpuindex); + sprintf(CPU, "%02x", (char)cpuindex); *CPUIN = (u8) cpuindex; for(i=0;ilength; - memcpy((void *)ssdt, AmlCode_sspr, AmlCode_sspr->length); + memcpy(ssdt, AmlCode_sspr, sizeof(acpi_header_t)); + current += ssdt->length; + memcpy(ssdt, AmlCode_sspr, ssdt->length); update_sspr((void*)ssdt,cpu->path.apic.node_id, cpu_index); /* recalculate checksum */ ssdt->checksum = 0; -- cgit v1.2.3