diff options
author | Yuval Peress <peress@chromium.org> | 2021-04-06 13:02:28 -0600 |
---|---|---|
committer | Commit Bot <commit-bot@chromium.org> | 2021-04-07 01:42:08 +0000 |
commit | 19dcdf2830ae424f7d24c828002fa133a7b7b38d (patch) | |
tree | b7e80484bdad40105676954a6291c8ec0b3e3770 /zephyr/Kconfig.debug_assert | |
parent | 4e412c42d5e2c14a8b3f0ad001435e2d8f88f58c (diff) | |
download | chrome-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
Diffstat (limited to 'zephyr/Kconfig.debug_assert')
-rw-r--r-- | zephyr/Kconfig.debug_assert | 45 |
1 files changed, 45 insertions, 0 deletions
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 |