summaryrefslogtreecommitdiff
path: root/src/mainboard/Kconfig
diff options
context:
space:
mode:
authorPeter Stuge <peter@stuge.se>2010-10-13 06:23:02 +0000
committerPeter Stuge <peter@stuge.se>2010-10-13 06:23:02 +0000
commit51eafdeae621f1b04db51c3b4a690fa993aa48a0 (patch)
treee36ad669d05eecf00ce5826f8fb3fad8409ebec7 /src/mainboard/Kconfig
parentf2573bd23727db672b22f3840ce91d08ec3aea5d (diff)
downloadcoreboot-51eafdeae621f1b04db51c3b4a690fa993aa48a0.tar.xz
Enable or disable the power button in Kconfig
Some mainboards need to disable the power button to avoid turning off right after being turned on, while other boards ship with a jumper over the power button and should allow the user to configure the behavior. This adds infrastructure in the form of four mutually exclusive options which can be selected in a mainboard Kconfig (power button forced on/off, and user-controllable with default on/off) and one result bool which source code can test. (Enable the button or not.) The options have been implemented in CS5536 code and for all mainboards which select SOUTHBRIDGE_AMD_CS5536, but should be used also by other chipsets where applicable. Note that if chipset code uses the result bool ENABLE_POWER_BUTTON, then every board using that chipset must select one out of the four control options in order to build. All touched boards should have unchanged behavior, except pcengines/alix1c, traverse/geos and lippert/hurricane-lx where the power button can now be configured by the user. Build tested for alix1c, alix2d, hurricane-lx and wyse-s50. Confirmed to work as advertised on alix1c both with button enabled and disabled. Includes additional traverse/geos changes from Nathan and lippert/hurricane-lx changes from Jens to correctly use the new feature on those boards. Signed-off-by: Peter Stuge <peter@stuge.se> Acked-by: Aurelien Guillaume <aurelien@iwi.me> Acked-by: Nils Jacobs <njacobs8@hetnet.nl> git-svn-id: svn://svn.coreboot.org/coreboot/trunk@5948 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
Diffstat (limited to 'src/mainboard/Kconfig')
-rw-r--r--src/mainboard/Kconfig18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/mainboard/Kconfig b/src/mainboard/Kconfig
index db1112826d..ca0d74d45d 100644
--- a/src/mainboard/Kconfig
+++ b/src/mainboard/Kconfig
@@ -247,4 +247,22 @@ config ROM_SIZE
default 0x200000 if COREBOOT_ROMSIZE_KB_2048
default 0x400000 if COREBOOT_ROMSIZE_KB_4096
+config ENABLE_POWER_BUTTON
+ bool "Enable the power button" if POWER_BUTTON_IS_OPTIONAL
+ default y if POWER_BUTTON_DEFAULT_ENABLE
+ default n if POWER_BUTTON_DEFAULT_DISABLE
+ help
+ The selected mainboard can optionally have the power button tied
+ to ground with a jumper so that the button appears to be
+ constantly depressed. If this option is enabled and the jumper is
+ installed then the board will turn on, but turn off again after a
+ short timeout, usually 4 seconds.
+
+ Select Y here if you have removed the jumper and want to use an
+ actual power button. Select N if you have the jumper installed.
+
+config ENABLE_POWER_BUTTON
+ def_bool y if !POWER_BUTTON_IS_OPTIONAL && POWER_BUTTON_FORCE_ENABLE
+ def_bool n if !POWER_BUTTON_IS_OPTIONAL && POWER_BUTTON_FORCE_DISABLE
+
endmenu