diff options
Diffstat (limited to 'src/mainboard/kontron/986lcd-m')
-rw-r--r-- | src/mainboard/kontron/986lcd-m/Makefile.inc | 2 | ||||
-rw-r--r-- | src/mainboard/kontron/986lcd-m/cmos.layout | 3 | ||||
-rw-r--r-- | src/mainboard/kontron/986lcd-m/fadt.c | 11 | ||||
-rw-r--r-- | src/mainboard/kontron/986lcd-m/romstage.c | 12 |
4 files changed, 19 insertions, 9 deletions
diff --git a/src/mainboard/kontron/986lcd-m/Makefile.inc b/src/mainboard/kontron/986lcd-m/Makefile.inc index b6a23660c8..591d064848 100644 --- a/src/mainboard/kontron/986lcd-m/Makefile.inc +++ b/src/mainboard/kontron/986lcd-m/Makefile.inc @@ -17,6 +17,6 @@ ## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA ## -obj-y += rtl8168.o +driver-y += rtl8168.o smmobj-$(CONFIG_HAVE_SMI_HANDLER) += mainboard_smi.o diff --git a/src/mainboard/kontron/986lcd-m/cmos.layout b/src/mainboard/kontron/986lcd-m/cmos.layout index 2217cb365a..a61a9deabf 100644 --- a/src/mainboard/kontron/986lcd-m/cmos.layout +++ b/src/mainboard/kontron/986lcd-m/cmos.layout @@ -89,7 +89,8 @@ entries # coreboot config options: bootloader 416 512 s 0 boot_devices -#928 40 r 0 unused +928 8 h 0 boot_default +#936 12 r 0 unused # coreboot config options: mainboard specific options 948 2 e 8 cpufan_cruise_control diff --git a/src/mainboard/kontron/986lcd-m/fadt.c b/src/mainboard/kontron/986lcd-m/fadt.c index a0e381fb13..12aeac062e 100644 --- a/src/mainboard/kontron/986lcd-m/fadt.c +++ b/src/mainboard/kontron/986lcd-m/fadt.c @@ -89,16 +89,17 @@ void acpi_create_fadt(acpi_fadt_t * fadt, acpi_facs_t * facs, void *dsdt) fadt->flags = ACPI_FADT_WBINVD | ACPI_FADT_C1_SUPPORTED | ACPI_FADT_C2_MP_SUPPORTED | ACPI_FADT_SLEEP_BUTTON | + ACPI_FADT_RESET_REGISTER | ACPI_FADT_S4_RTC_WAKE | ACPI_FADT_PLATFORM_CLOCK; - fadt->reset_reg.space_id = 0; - fadt->reset_reg.bit_width = 0; + fadt->reset_reg.space_id = 1; + fadt->reset_reg.bit_width = 8; fadt->reset_reg.bit_offset = 0; fadt->reset_reg.resv = 0; - fadt->reset_reg.addrl = 0x0; - fadt->reset_reg.addrh = 0x0; + fadt->reset_reg.addrl = 0xcf9; + fadt->reset_reg.addrh = 0; - fadt->reset_value = 0; + fadt->reset_value = 6; fadt->x_firmware_ctl_l = (unsigned long)facs; fadt->x_firmware_ctl_h = 0; fadt->x_dsdt_l = (unsigned long)dsdt; diff --git a/src/mainboard/kontron/986lcd-m/romstage.c b/src/mainboard/kontron/986lcd-m/romstage.c index bcec4465fa..9ddbb05ee3 100644 --- a/src/mainboard/kontron/986lcd-m/romstage.c +++ b/src/mainboard/kontron/986lcd-m/romstage.c @@ -367,6 +367,13 @@ void main(unsigned long bist) } ich7_enable_lpc(); + + /* Force PCIRST# */ + pci_write_config16(PCI_DEV(0, 0x1e, 0), BCTRL, SBR); + udelay(200); + pci_write_config16(PCI_DEV(0, 0x1e, 0), BCTRL, 0); + udelay(200); + early_superio_config_w83627thg(); /* Set up the console */ @@ -383,8 +390,9 @@ void main(unsigned long bist) report_bist_failure(bist); if (MCHBAR16(SSKPD) == 0xCAFE) { - printk(BIOS_DEBUG, "soft reset detected.\n"); - boot_mode = 1; + printk(BIOS_DEBUG, "soft reset detected, rebooting properly\n"); + outb(0x6, 0xcf9); + while (1) asm("hlt"); } /* Perform some early chipset initialization required |