summaryrefslogtreecommitdiff
path: root/zephyr/Kconfig.panic
diff options
context:
space:
mode:
authorYuval Peress <peress@chromium.org>2021-04-06 13:08:08 -0600
committerCommit Bot <commit-bot@chromium.org>2021-04-07 06:03:32 +0000
commit9c44f9e96f4bd965f05b425d8fb54c535e3eb2b7 (patch)
treee1a89c17a1f48ac69b67213acf3df64af6fc0b06 /zephyr/Kconfig.panic
parent6394373680fe047b98a0d8c6ab91497feb40f34b (diff)
downloadchrome-ec-9c44f9e96f4bd965f05b425d8fb54c535e3eb2b7.tar.gz
zephyr: kconfig: move panic configs to separate file
Clean up the root Kconfig for Zephyr by moving sub configs to separate file (Kconfig.panic). BRANCH=none BUG=none TEST=zmake testall Signed-off-by: Yuval Peress <peress@chromium.org> Change-Id: If506bc71ac969477d88250c1fcacca6a19101968 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2808149 Reviewed-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'zephyr/Kconfig.panic')
-rw-r--r--zephyr/Kconfig.panic43
1 files changed, 43 insertions, 0 deletions
diff --git a/zephyr/Kconfig.panic b/zephyr/Kconfig.panic
new file mode 100644
index 0000000000..768526d1f6
--- /dev/null
+++ b/zephyr/Kconfig.panic
@@ -0,0 +1,43 @@
+# 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_PANIC
+
+config PLATFORM_EC_SOFTWARE_PANIC
+ bool "Software panic"
+ default y
+ help
+ Sometimes the EC has bugs that are provoked by unexpected events.
+ This enables storing a panic log and halt the system for
+ software-related reasons, such as stack overflow or assertion
+ failure.
+
+config PLATFORM_EC_CONSOLE_CMD_CRASH
+ bool "Console command: crash"
+ default y
+ help
+ For testing purposes it is useful to be able to generation exceptions
+ to check that the panic reporting is working correctly. The enables
+ the 'crash' command which supports generating various exceptions,
+ selected by its parameter:
+
+ assert - assertion failure (ASSERT() macro)
+ divzero - division by zero
+ udivzero - division of unsigned value by zero
+ stack (if enabled) - stack overflow
+ unaligned - unaligned access (e.g. word load from 0x123)
+ watchdog - watchdog timer fired
+ hang - infinite loop in the EC code
+
+config PLATFORM_EC_STACKOVERFLOW
+ bool "Console command: crash stack"
+ depends on PLATFORM_EC_CONSOLE_CMD_CRASH
+ default y
+ help
+ This enables the 'stack' parameter for the 'crash' command. This
+ causes a stack overflow by recursing repeatedly while task switching.
+ This can be used to check that stack-overflow detection is working
+ as expected.
+
+endif # PLATFORM_EC_PANIC