summaryrefslogtreecommitdiff
path: root/src/southbridge/amd/sb800
diff options
context:
space:
mode:
authorZheng Bao <zheng.bao@amd.com>2011-01-24 07:50:07 +0000
committerZheng Bao <Zheng.Bao@amd.com>2011-01-24 07:50:07 +0000
commita302b58d0157dd216522ca468979b7fcc8b43d51 (patch)
tree3fb390d296e6febbd012fc8ed00c7e1fe2407933 /src/southbridge/amd/sb800
parent4f81e198aeb3b46d7e60fcce5f10fb3ad5127b02 (diff)
downloadcoreboot-a302b58d0157dd216522ca468979b7fcc8b43d51.tar.xz
Change fadt revision back to 3.
The AcpiPmaCntBlk have to be set. Further research is needed to find out why. Signed-off-by: Zheng Bao <zheng.bao@amd.com> Acked-by: Zheng Bao <zheng.bao@amd.com> git-svn-id: svn://svn.coreboot.org/coreboot/trunk@6293 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
Diffstat (limited to 'src/southbridge/amd/sb800')
-rw-r--r--src/southbridge/amd/sb800/early_setup.c5
-rw-r--r--src/southbridge/amd/sb800/fadt.c2
2 files changed, 5 insertions, 2 deletions
diff --git a/src/southbridge/amd/sb800/early_setup.c b/src/southbridge/amd/sb800/early_setup.c
index 4672ada216..7ef0d8e268 100644
--- a/src/southbridge/amd/sb800/early_setup.c
+++ b/src/southbridge/amd/sb800/early_setup.c
@@ -55,9 +55,12 @@ static void sb800_acpi_init(void) {
pmio_write(0x66, ACPI_CPU_CONTROL & 0xFF);
pmio_write(0x67, ACPI_CPU_CONTROL >> 8);
- pmio_write(0x6A, 0); /* AcpiSmiCmdLo */
+ pmio_write(0x6A, 0xB0); /* AcpiSmiCmdLo */
pmio_write(0x6B, 0); /* AcpiSmiCmdHi */
+ pmio_write(0x6E, 0xB8); /* AcpiPmaCntBlkLo */
+ pmio_write(0x6F, 0); /* AcpiPmaCntBlkHi */
+
pmio_write(0x6C, ACPI_PMA_CNT_BLK & 0xFF);
pmio_write(0x6D, ACPI_PMA_CNT_BLK >> 8);
diff --git a/src/southbridge/amd/sb800/fadt.c b/src/southbridge/amd/sb800/fadt.c
index fece94398a..6eb5c0a737 100644
--- a/src/southbridge/amd/sb800/fadt.c
+++ b/src/southbridge/amd/sb800/fadt.c
@@ -38,7 +38,7 @@ void acpi_create_fadt(acpi_fadt_t * fadt, acpi_facs_t * facs, void *dsdt)
memset((void *)fadt, 0, sizeof(acpi_fadt_t));
memcpy(header->signature, "FACP", 4);
header->length = 244;
- header->revision = 1; /* TODO: 3 will make linux hang. */
+ header->revision = 3;
memcpy(header->oem_id, OEM_ID, 6);
memcpy(header->oem_table_id, "COREBOOT", 8);
memcpy(header->asl_compiler_id, ASLC, 4);