Dave Frodin (dave.frodin@se-eng.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/1162
-gerrit
commit a2f1d03b8c9cc11272a1d23cd0729c5c0b38dcb6 Author: Dave Frodin dave.frodin@se-eng.com Date: Mon Jul 2 14:30:19 2012 -0600
IEI/Kino: Allow 64 bit versions of Windows to boot.
This removes the HPET from the ACPI tables and fixes the legacy VGA entry.
Change-Id: I7a6e502aa27c97b335ef15c828c847543de8a8c0 Signed-off-by: Dave Frodin dave.frodin@se-eng.com --- src/mainboard/iei/kino-780am2-fam10/acpi_tables.c | 5 ++++- src/mainboard/iei/kino-780am2-fam10/dsdt.asl | 6 +++--- 2 files changed, 7 insertions(+), 4 deletions(-)
diff --git a/src/mainboard/iei/kino-780am2-fam10/acpi_tables.c b/src/mainboard/iei/kino-780am2-fam10/acpi_tables.c index 5e48bbe..6883643 100644 --- a/src/mainboard/iei/kino-780am2-fam10/acpi_tables.c +++ b/src/mainboard/iei/kino-780am2-fam10/acpi_tables.c @@ -114,7 +114,7 @@ unsigned long write_acpi_tables(unsigned long start) unsigned long current; acpi_rsdp_t *rsdp; acpi_rsdt_t *rsdt; - acpi_hpet_t *hpet; +/* acpi_hpet_t *hpet; */ acpi_madt_t *madt; acpi_srat_t *srat; acpi_slit_t *slit; @@ -168,6 +168,8 @@ unsigned long write_acpi_tables(unsigned long start) acpi_create_fadt(fadt, facs, dsdt); acpi_add_table(rsdp, fadt);
+#if 0 + /* having the HPET table will prevent 64 bit Windows from booting */ /* * We explicitly add these tables later on: */ @@ -177,6 +179,7 @@ unsigned long write_acpi_tables(unsigned long start) current += sizeof(acpi_hpet_t); acpi_create_hpet(hpet); acpi_add_table(rsdp, hpet); +#endif
/* If we want to use HPET Timers Linux wants an MADT */ current = ALIGN(current, 8); diff --git a/src/mainboard/iei/kino-780am2-fam10/dsdt.asl b/src/mainboard/iei/kino-780am2-fam10/dsdt.asl index 66f8254..e14e4c3 100644 --- a/src/mainboard/iei/kino-780am2-fam10/dsdt.asl +++ b/src/mainboard/iei/kino-780am2-fam10/dsdt.asl @@ -37,7 +37,7 @@ DefinitionBlock ( Name(PBLN, 0x0) /* Length of BIOS area */
Name(PCBA, CONFIG_MMCONF_BASE_ADDRESS) /* Base address of PCIe config space */ - Name(HPBA, 0xFED00000) /* Base address of HPET table */ +/* Name(HPBA, 0xFED00000) causes a BSOD in 64 bit Windows */ /* Base address of HPET table */
Name(SSFG, 0x0D) /* S1 support: bit 0, S2 Support: bit 1, etc. S0 & S5 assumed */
@@ -933,7 +933,7 @@ DefinitionBlock ( /* DBGO(" to S0\n") */
/* Re-enable HPET */ - Store(1,HPDE) + /* Store(1,HPDE) causes a BSOD in 64 bit Windows */
/* Restore PCIRST# so it resets USB */ if (LEqual(Arg0,3)){ @@ -1545,9 +1545,9 @@ DefinitionBlock ( 0xF300 /* length */ )
- Memory32Fixed(READWRITE, 0, 0xA0000, BSMM) Memory32Fixed(READONLY, 0x000A0000, 0x00020000, VGAM) /* VGA memory space */ #if 0 + Memory32Fixed(READWRITE, 0, 0xA0000, BSMM) Memory32Fixed(READONLY, 0x000C0000, 0x00020000, EMM1) /* Assume C0000-E0000 empty */ Memory32Fixed(READONLY, 0x000E0000, 0x00020000, RDBS) /* BIOS ROM area */