summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--chassishandler.cpp4
-rw-r--r--configure.ac11
2 files changed, 15 insertions, 0 deletions
diff --git a/chassishandler.cpp b/chassishandler.cpp
index 2e911f9..305897b 100644
--- a/chassishandler.cpp
+++ b/chassishandler.cpp
@@ -1327,7 +1327,9 @@ std::map<IpmiValue, Source::Sources> sourceIpmiToDbus = {
{ipmiDefault, Source::Sources::Default}};
std::map<IpmiValue, Mode::Modes> modeIpmiToDbus = {
+#ifdef ENABLE_BOOT_FLAG_SAFE_MODE_SUPPORT
{0x03, Mode::Modes::Safe},
+#endif // ENABLE_BOOT_SAFE_MODE_SUPPORT
{0x06, Mode::Modes::Setup},
{ipmiDefault, Mode::Modes::Regular}};
@@ -1339,7 +1341,9 @@ std::map<Source::Sources, IpmiValue> sourceDbusToIpmi = {
{Source::Sources::Default, ipmiDefault}};
std::map<Mode::Modes, IpmiValue> modeDbusToIpmi = {
+#ifdef ENABLE_BOOT_FLAG_SAFE_MODE_SUPPORT
{Mode::Modes::Safe, 0x03},
+#endif // ENABLE_BOOT_SAFE_MODE_SUPPORT
{Mode::Modes::Setup, 0x06},
{Mode::Modes::Regular, ipmiDefault}};
diff --git a/configure.ac b/configure.ac
index 04c48b8..296165f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -25,6 +25,17 @@ AM_PROG_AR
AC_PROG_INSTALL
AC_PROG_MAKE_SET
+# Add an option to enable/disable safe mode in boot flags
+AC_ARG_ENABLE([boot-flag-safe-mode-support],
+ AS_HELP_STRING([--disable-boot-flag-safe-mode-support], [Disable safe mode option in boot flags. [default=enable]])
+)
+AS_IF([test "x$enable_boot_flag_safe_mode_support" != "xno"],
+ AC_MSG_NOTICE([Enabling safe mode option in boot flags])
+ [cpp_flags="-DENABLE_BOOT_FLAG_SAFE_MODE_SUPPORT"]
+ AC_SUBST([CPPFLAGS], [$cpp_flags]),
+ AC_MSG_WARN([Disabling safe mode option in boot flags])
+)
+
# Add an option to enable/disable i2c master write read command white list checking
AC_ARG_ENABLE([i2c-whitelist-check],
AS_HELP_STRING([--disable-i2c-whitelist-check], [Disable I2C master write read command white list check. [default=enable]])
OpenPOWER on IntegriCloud