68 lines
2.0 KiB
Plaintext
68 lines
2.0 KiB
Plaintext
# Software watchdog configuration
|
|
|
|
# Copyright (c) 2020 Libre Solar Technologies GmbH
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
menuconfig TASK_WDT
|
|
bool "Task-level software watchdog"
|
|
select REBOOT
|
|
help
|
|
Enable task watchdog
|
|
|
|
The task watchdog allows to have individual watchdog channels
|
|
per thread, even if the hardware supports only a single watchdog.
|
|
|
|
if TASK_WDT
|
|
config TASK_WDT_CHANNELS
|
|
int "Maximum number of task watchdog channels"
|
|
default 5
|
|
range 2 100
|
|
help
|
|
The timeouts for each channel are stored in an array. Allocate only
|
|
the required amount of channels to reduce memory footprint.
|
|
|
|
config TASK_WDT_HW_FALLBACK
|
|
bool "Use hardware watchdog as a fallback"
|
|
default y
|
|
help
|
|
This option allows to specify a hardware watchdog device in the
|
|
application that is used as an additional safety layer if the task
|
|
watchdog itself gets stuck.
|
|
|
|
config TASK_WDT_MIN_TIMEOUT
|
|
int "Minimum timeout for task watchdog (ms)"
|
|
depends on TASK_WDT_HW_FALLBACK
|
|
default 100
|
|
range 1 10000
|
|
help
|
|
The task watchdog uses a continuously restarted k_timer as its
|
|
backend. This value specifies the minimum timeout in milliseconds
|
|
among all task watchdogs used in the application.
|
|
|
|
If a hardware watchdog is configured as a fallback for the task
|
|
watchdog, its timeout is set to this value plus
|
|
TASK_WDT_HW_FALLBACK_DELAY.
|
|
|
|
config TASK_WDT_HW_FALLBACK_DELAY
|
|
int "Additional delay for hardware watchdog (ms)"
|
|
depends on TASK_WDT_HW_FALLBACK
|
|
default 20
|
|
range 1 1000
|
|
help
|
|
The timeout of the hardware watchdog fallback will be increased by
|
|
this value to provide sufficient time for corrective actions in the
|
|
callback function.
|
|
|
|
In addition to that, the delay allows to compensate deviations
|
|
between different clock sources for the hardware watchdog and the
|
|
kernel timer. This is especially important if the hardware watchdog
|
|
is clocked by an inaccurate low-speed RC oscillator.
|
|
|
|
config TASK_WDT_SHELL
|
|
bool "Task watchdog shell utilities"
|
|
depends on SHELL
|
|
help
|
|
Activate shell module that provides Task watchdog commands.
|
|
|
|
endif
|