Denis Carikli (GNUtoo at no-log.org) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/3991
-gerrit
commit dcab843a001bd645dd4aca98dbc87611bdb4ad42
Author: Denis 'GNUtoo' Carikli <GNUtoo at no-log.org>
Date: Sun Oct 20 23:37:35 2013 +0200
X86 Kconfig: Make the MAX_REBOOT_CNT selectable in X86_BOOTBLOCK_NORMAL mode.
src/arch/x86/Kconfig defined MAX_REBOOT_CNT as 3.
In the bootblock, the reboot_bits cmos option is increased by one at each boot.
If the boot is successful, the respective nvram settings have to be reset to
boot on the normal/ prefix next time.
If KEEP_BOOT_COUNT is selected, it has to be done after the ramstage,
if not, it's done in the ramstage.
In case of a failed boot, the reboot_bits keeps increasing until it reach
KEEP_BOOT_COUNT. Once it is reached, it will swtich to fallback/ at next boot.
With KEEP_BOOT_COUNT beeing hidden in make menuconfig, and set to 3,
the user probably won't know that coreboot will only switch to fallback after
3 failed boots, and will act as if the computer will not boot anymore with its
current coreboot image.
This patch makes KEEP_BOOT_COUNT selectable.
This patch was tested on the Lenovo X60.
Change-Id: I746df11c933dfe62e01e1591479ca96a84907dc0
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo at no-log.org>
---
src/arch/x86/Kconfig | 20 ++++++++++++++------
1 file changed, 14 insertions(+), 6 deletions(-)
diff --git a/src/arch/x86/Kconfig b/src/arch/x86/Kconfig
index 0a21fcc..52bafbd 100644
--- a/src/arch/x86/Kconfig
+++ b/src/arch/x86/Kconfig
@@ -42,12 +42,6 @@ config STACK_SIZE
hex
default 0x1000
-# Maximum reboot count
-# TODO: Improve description.
-config MAX_REBOOT_CNT
- int
- default 3
-
# This is something you almost certainly don't want to mess with.
# How many SIPIs do we send when starting up APs and cores?
# The answer in 2000 or so was '2'. Nowadays, on many systems,
@@ -72,6 +66,20 @@ config X86_BOOTBLOCK_NORMAL
endchoice
+# Maximum reboot count
+config MAX_REBOOT_CNT
+ int "Number of failed boot attempts before switching back to fallback/"
+ default 3
+ depends on X86_BOOTBLOCK_NORMAL
+ help
+ Note that the minimum number of reset a machine has to do to boot
+ can vary across machines.
+ If you set it to a number that is less that the machine minimum,
+ the machine will then switch to fallback/ during the next boot.
+ Once in fallback/, the machine will keep that settings unless
+ the nvram is reset, which will make it switch to fallback/
+ again during the next boot.
+
config BOOTBLOCK_SOURCE
string
default "bootblock_simple.c" if X86_BOOTBLOCK_SIMPLE