From bf264e940e3c97b3924a2361b7149f8533f400b4 Mon Sep 17 00:00:00 2001 From: Stefan Reinauer Date: Fri, 14 May 2010 19:09:20 +0000 Subject: i945: * fix some potential compiler issues with newer gccs * add some more comments * make 32bit accesses for feature test functions * make some objects drivers because they contain a pci_driver struct. Signed-off-by: Stefan Reinauer Acked-by: Stefan Reinauer git-svn-id: svn://svn.coreboot.org/coreboot/trunk@5552 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1 --- src/mainboard/intel/d945gclf/Makefile.inc | 2 +- src/mainboard/kontron/986lcd-m/Makefile.inc | 2 +- src/mainboard/kontron/986lcd-m/cmos.layout | 3 ++- src/mainboard/kontron/986lcd-m/fadt.c | 11 ++++++----- src/mainboard/kontron/986lcd-m/romstage.c | 12 ++++++++++-- src/mainboard/roda/rk886ex/Makefile.inc | 2 +- src/mainboard/roda/rk886ex/cmos.layout | 3 ++- src/mainboard/roda/rk886ex/romstage.c | 9 +++++++-- 8 files changed, 30 insertions(+), 14 deletions(-) (limited to 'src/mainboard') diff --git a/src/mainboard/intel/d945gclf/Makefile.inc b/src/mainboard/intel/d945gclf/Makefile.inc index a155c7284f..4c6642f003 100644 --- a/src/mainboard/intel/d945gclf/Makefile.inc +++ b/src/mainboard/intel/d945gclf/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/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 diff --git a/src/mainboard/roda/rk886ex/Makefile.inc b/src/mainboard/roda/rk886ex/Makefile.inc index cf0241dd5d..f92043d7ab 100644 --- a/src/mainboard/roda/rk886ex/Makefile.inc +++ b/src/mainboard/roda/rk886ex/Makefile.inc @@ -19,6 +19,6 @@ obj-y += m3885.o obj-y += ec.o -obj-y += rtl8168.o +driver-y += rtl8168.o smmobj-$(CONFIG_HAVE_SMI_HANDLER) += mainboard_smi.o diff --git a/src/mainboard/roda/rk886ex/cmos.layout b/src/mainboard/roda/rk886ex/cmos.layout index b5ae473ac6..4dc9112061 100644 --- a/src/mainboard/roda/rk886ex/cmos.layout +++ b/src/mainboard/roda/rk886ex/cmos.layout @@ -91,7 +91,8 @@ entries # coreboot config options: bootloader 416 512 s 0 boot_devices -#928 80 r 0 unused +928 8 h 0 boot_default +#936 48 r 0 unused # coreboot config options: check sums 984 16 h 0 check_sum diff --git a/src/mainboard/roda/rk886ex/romstage.c b/src/mainboard/roda/rk886ex/romstage.c index df985d4210..803aaee89b 100644 --- a/src/mainboard/roda/rk886ex/romstage.c +++ b/src/mainboard/roda/rk886ex/romstage.c @@ -281,6 +281,10 @@ void main(unsigned long bist) } ich7_enable_lpc(); + + /* Force PCIRST# */ + pci_write_config16(PCI_DEV(0, 0x1e, 0), BCTRL, SBR); + early_superio_config(); /* Set up the console */ @@ -297,8 +301,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 -- cgit v1.2.3