Edward O'Callaghan (eocallaghan(a)alterapraxis.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/4007
-gerrit
commit e76e17ea41cd13cbe01e03be998edf2228f4d578
Author: Edward O'Callaghan <eocallaghan(a)alterapraxis.com>
Date: Sat Nov 2 03:17:28 2013 +1100
Add inital work on supporting the Acer Aspire 5520 ICW50 laptop (WIP).
Change-Id: I33217e23d97d0e158f696809e5228a559de1a0b7
Signed-off-by: Edward O'Callaghan <eocallaghan(a)alterapraxis.com>
---
src/mainboard/Kconfig | 3 +++
src/mainboard/acer/Kconfig | 35 +++++++++++++++++++++++++
src/mainboard/acer/fuquene/Kconfig | 52 ++++++++++++++++++++++++++++++++++++++
3 files changed, 90 insertions(+)
diff --git a/src/mainboard/Kconfig b/src/mainboard/Kconfig
index fdb0eac..89d1340 100644
--- a/src/mainboard/Kconfig
+++ b/src/mainboard/Kconfig
@@ -8,6 +8,8 @@ config VENDOR_AAEON
bool "Aaeon"
config VENDOR_ABIT
bool "Abit"
+config VENDOR_ACER
+ bool "Acer"
config VENDOR_ADLINK
bool "ADLINK"
config VENDOR_ADVANSUS
@@ -142,6 +144,7 @@ endchoice
source "src/mainboard/a-trend/Kconfig"
source "src/mainboard/aaeon/Kconfig"
source "src/mainboard/abit/Kconfig"
+source "src/mainboard/acer/Kconfig"
source "src/mainboard/adlink/Kconfig"
source "src/mainboard/advansus/Kconfig"
source "src/mainboard/advantech/Kconfig"
diff --git a/src/mainboard/acer/Kconfig b/src/mainboard/acer/Kconfig
new file mode 100644
index 0000000..c0af794
--- /dev/null
+++ b/src/mainboard/acer/Kconfig
@@ -0,0 +1,35 @@
+##
+## This file is part of the coreboot project.
+##
+## Copyright (C) 2013 Edward O'Callaghan <eocallaghan(a)alterapraxis.com>
+##
+## This program is free software; you can redistribute it and/or modify
+## it under the terms of the GNU General Public License as published by
+## the Free Software Foundation; version 2 of the License.
+##
+## This program is distributed in the hope that it will be useful,
+## but WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+## GNU General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program; if not, write to the Free Software
+## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+##
+if VENDOR_ACER
+
+choice
+ prompt "Mainboard model"
+
+config BOARD_ACER_FUQUENE
+ bool "Fuquene"
+
+endchoice
+
+source "src/mainboard/acer/fuquene/Kconfig"
+
+config MAINBOARD_VENDOR
+ string
+ default "Acer"
+
+endif # VENDOR_ACER
diff --git a/src/mainboard/acer/fuquene/Kconfig b/src/mainboard/acer/fuquene/Kconfig
new file mode 100644
index 0000000..741fe94
--- /dev/null
+++ b/src/mainboard/acer/fuquene/Kconfig
@@ -0,0 +1,52 @@
+##
+## This file is part of the coreboot project.
+##
+## Copyright (C) 2013 Edward O'Callaghan <eocallaghan(a)alterapraxis.com>
+##
+## This program is free software; you can redistribute it and/or modify
+## it under the terms of the GNU General Public License as published by
+## the Free Software Foundation; version 2 of the License.
+##
+## This program is distributed in the hope that it will be useful,
+## but WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+## GNU General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program; if not, write to the Free Software
+## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+##
+if BOARD_ACER_FUQUENE
+
+config BOARD_SPECIFIC_OPTIONS # dummy
+ def_bool y
+ select ARCH_X86
+ select CPU_AMD_SOCKET_S1G1
+ select NORTHBRIDGE_AMD_AMDK8
+ select SOUTHBRIDGE_AMD_RS690
+ select SOUTHBRIDGE_AMD_SB600
+ select SUPERIO_ITE_IT8712F
+ select HAVE_ACPI_TABLES
+ select HAVE_MP_TABLE
+ select HAVE_PIRQ_TABLE
+ select HAVE_OPTION_TABLE
+ select SB_HT_CHAIN_UNITID_OFFSET_ONLY
+ select BOARD_ROMSIZE_KB_1024
+ select RAMINIT_SYSINFO
+ select QRANK_DIMM_SUPPORT
+ select SET_FIDVID
+
+
+config MAINBOARD_DIR
+ string
+ default acer/fuquene
+
+config MAINBOARD_PART_NUMBER
+ string
+ default "FUQUENE"
+
+config IRQ_SLOT_COUNT
+ int
+ default 9
+
+endif # BOARD_ACER_FUQUENE
Denis Carikli (GNUtoo(a)no-log.org) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/3991
-gerrit
commit 7e365e36613f00b687eb498c86310b2c275ab45b
Author: Denis 'GNUtoo' Carikli <GNUtoo(a)no-log.org>
Date: Sun Oct 20 23:37:35 2013 +0200
lenovo/x60: Require only one failed boot to switch to fallback in X86_BOOTBLOCK_NORMAL mode.
src/arch/x86/Kconfig defines MAX_REBOOT_CNT as 3.
If that value is not overrided, then the Lenovo X60 coreboot image gets it too.
At the end of a successfull boot, with CONFIG_KEEP_BOOT_COUNT,
the Lenovo X60 increments its reboot_bits cmos option by one.
In case of a failed boot, the user probably doesn't know that coreboot will
only switch to fallback after 3 failed boots, and will act as if the laptop
will not boot anymore with its current coreboot image.
Change-Id: I746df11c933dfe62e01e1591479ca96a84907dc0
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo(a)no-log.org>
---
src/mainboard/lenovo/x60/Kconfig | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/src/mainboard/lenovo/x60/Kconfig b/src/mainboard/lenovo/x60/Kconfig
index 72aeef8..90d472c 100644
--- a/src/mainboard/lenovo/x60/Kconfig
+++ b/src/mainboard/lenovo/x60/Kconfig
@@ -54,6 +54,10 @@ config MAX_CPUS
int
default 2
+config MAX_REBOOT_CNT
+ int
+ default 1
+
config MAINBOARD_SMBIOS_MANUFACTURER
string
default "LENOVO"
Denis Carikli (GNUtoo(a)no-log.org) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/3990
-gerrit
commit 27665d835e2cb927c46e71255a42b5e346b4812c
Author: Denis 'GNUtoo' Carikli <GNUtoo(a)no-log.org>
Date: Mon Oct 21 01:56:47 2013 +0200
Add a KEEP_BOOT_COUNT Kconfig option.
The use case of that option is to inform coreboot (trough the nvram) at the
next boot, that the computer could not fully boot to boot to an usable state.
In that case, the boot count is incremented by one.
Previously there was no way to tell coreboot that the computer really booted
successfully, because it was assumed that if set_boot_successful was called
in ramstage, then the computer would have booted successfully.
However many things can go wrong after that point, for instance the payload
could fail to boot, or the operating system's kernel could fail to boot too,
due to the wrong configurations passed to it by coreboot and the payload.
Change-Id: I01af053455eb6bd2f7a4f9d37e8c234ba8d55250
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo(a)no-log.org>
---
src/arch/x86/Kconfig | 8 ++++++++
src/lib/fallback_boot.c | 3 +++
2 files changed, 11 insertions(+)
diff --git a/src/arch/x86/Kconfig b/src/arch/x86/Kconfig
index 0a21fcc..b4e8eb0 100644
--- a/src/arch/x86/Kconfig
+++ b/src/arch/x86/Kconfig
@@ -72,6 +72,14 @@ config X86_BOOTBLOCK_NORMAL
endchoice
+config KEEP_BOOT_COUNT
+ bool "Keep boot count"
+ default n
+ depends on PC80_SYSTEM && X86_BOOTBLOCK_NORMAL
+ help
+ If enabled, the boot count is not reset anymore in the ramstage.
+ This delegates that task to the software running after the ramstage.
+
config BOOTBLOCK_SOURCE
string
default "bootblock_simple.c" if X86_BOOTBLOCK_SIMPLE
diff --git a/src/lib/fallback_boot.c b/src/lib/fallback_boot.c
index 0c49d5c..f6bc9fb 100644
--- a/src/lib/fallback_boot.c
+++ b/src/lib/fallback_boot.c
@@ -10,8 +10,11 @@ void boot_successful(void)
vbe_textmode_console();
#endif
+
+#if !CONFIG_KEEP_BOOT_COUNT
/* Remember this was a successful boot */
set_boot_successful();
+#endif
/* turn off the boot watchdog */
watchdog_off();