summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYuval Peress <peress@chromium.org>2021-04-06 13:02:28 -0600
committerCommit Bot <commit-bot@chromium.org>2021-04-07 01:42:08 +0000
commit19dcdf2830ae424f7d24c828002fa133a7b7b38d (patch)
treeb7e80484bdad40105676954a6291c8ec0b3e3770
parent4e412c42d5e2c14a8b3f0ad001435e2d8f88f58c (diff)
downloadchrome-ec-19dcdf2830ae424f7d24c828002fa133a7b7b38d.tar.gz
zephyr: kconfig: move debug_assert configs to separate file
Clean up the root Kconfig for Zephyr by moving sub configs to separate file (Kconfig.debug_assert). Also, add correct dependency to only allow PLATFORM_EC_DEBUG_ASSERT_* configs if PLATFORM_EC_DEBUG_ASSERT is enabled. BRANCH=none BUG=none TEST=zmake testall Signed-off-by: Yuval Peress <peress@chromium.org> Change-Id: I1cdd0dbba3b7300b8b95eb69df49d44033a0eb6c Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2808145
-rw-r--r--zephyr/Kconfig40
-rw-r--r--zephyr/Kconfig.debug_assert45
2 files changed, 46 insertions, 39 deletions
diff --git a/zephyr/Kconfig b/zephyr/Kconfig
index 433a6648fe..7050a5d951 100644
--- a/zephyr/Kconfig
+++ b/zephyr/Kconfig
@@ -37,6 +37,7 @@ rsource "Kconfig.battery"
rsource "Kconfig.board_version"
rsource "Kconfig.console"
rsource "Kconfig.console_cmd_mem"
+rsource "Kconfig.debug_assert"
rsource "Kconfig.header"
rsource "Kconfig.keyboard"
rsource "Kconfig.led"
@@ -202,45 +203,6 @@ config PLATFORM_EC_DEBUG_ASSERT
Note: There is also ASSERT() which is an alias of assert(), used in
host code where cstdlib is used.
-choice "Behaviour on assertion failure"
- prompt "Select behaviour on assertion failure"
- help
- This selects the action taken when the board hits an assertion
- failure in the code. This should not happen in normal operation,
- but can appear during development when the code is not yet fully
- tested.
-
-config PLATFORM_EC_DEBUG_ASSERT_REBOOTS
- bool "Reboot"
- help
- Prints a message and reboot if an assert() macro fails at runtime.
- If PLATFORM_EC_SOFTWARE_PANIC is enabled then the information is
- written to the panic log before rebooting.
-
-config PLATFORM_EC_DEBUG_ASSERT_BREAKPOINT
- bool "Generate a breakpoint"
- help
- Immediately hits a breakpoint instruction (without printing a message)
- so that a connected JTAG debugger can be used to debug the problem
- from there. If there is no debugger connected then the breakpoint
- instruction will cause the board to reboot immediately.
-
-endchoice # "Behaviour on assertion failure"
-
-config PLATFORM_EC_DEBUG_ASSERT_BRIEF
- bool "Use brief assertion-failure messages"
- depends on PLATFORM_EC_DEBUG_ASSERT_REBOOTS
- help
- Normally the assertion-failure messages include the expression that
- failed and the function name where the failure occurred. These are
- both stored as strings and can add a lot to the size of the image,
- since they are generated for every call to assert(). Use this option
- to drop them so that only the file and line number are shown.
-
- This option is of course not available with
- PLATFORM_EC_DEBUG_ASSERT_BREAKPOINT, since that does not print a
- message at all.
-
menuconfig PLATFORM_EC_ESPI
bool "eSPI"
depends on ESPI && AP
diff --git a/zephyr/Kconfig.debug_assert b/zephyr/Kconfig.debug_assert
new file mode 100644
index 0000000000..d568bc7e34
--- /dev/null
+++ b/zephyr/Kconfig.debug_assert
@@ -0,0 +1,45 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+if PLATFORM_EC_DEBUG_ASSERT
+choice "Behaviour on assertion failure"
+ prompt "Select behaviour on assertion failure"
+ help
+ This selects the action taken when the board hits an assertion
+ failure in the code. This should not happen in normal operation,
+ but can appear during development when the code is not yet fully
+ tested.
+
+config PLATFORM_EC_DEBUG_ASSERT_REBOOTS
+ bool "Reboot"
+ help
+ Prints a message and reboot if an assert() macro fails at runtime.
+ If PLATFORM_EC_SOFTWARE_PANIC is enabled then the information is
+ written to the panic log before rebooting.
+
+config PLATFORM_EC_DEBUG_ASSERT_BREAKPOINT
+ bool "Generate a breakpoint"
+ help
+ Immediately hits a breakpoint instruction (without printing a message)
+ so that a connected JTAG debugger can be used to debug the problem
+ from there. If there is no debugger connected then the breakpoint
+ instruction will cause the board to reboot immediately.
+
+endchoice # "Behaviour on assertion failure"
+
+config PLATFORM_EC_DEBUG_ASSERT_BRIEF
+ bool "Use brief assertion-failure messages"
+ depends on PLATFORM_EC_DEBUG_ASSERT_REBOOTS
+ help
+ Normally the assertion-failure messages include the expression that
+ failed and the function name where the failure occurred. These are
+ both stored as strings and can add a lot to the size of the image,
+ since they are generated for every call to assert(). Use this option
+ to drop them so that only the file and line number are shown.
+
+ This option is of course not available with
+ PLATFORM_EC_DEBUG_ASSERT_BREAKPOINT, since that does not print a
+ message at all.
+
+endif # PLATFORM_EC_DEBUG_ASSERT