summaryrefslogtreecommitdiff
path: root/interface-definitions
diff options
context:
space:
mode:
authorDaniil Baturin <daniil@vyos.io>2026-01-15 15:37:51 +0000
committerGitHub <noreply@github.com>2026-01-15 15:37:51 +0000
commit3f3e9d2e9d62eba72e3f82b2e88cae31d75afa37 (patch)
treed1a92ac22ccc1dd31f22d551bee5279b5b38a576 /interface-definitions
parent06eed816c29c11b1f1a8cfdd6b2116d5708a35eb (diff)
parent88b0c27a8d359d992e97c6043207dd877370295e (diff)
downloadvyos-1x-3f3e9d2e9d62eba72e3f82b2e88cae31d75afa37.tar.gz
vyos-1x-3f3e9d2e9d62eba72e3f82b2e88cae31d75afa37.zip
Merge pull request #4843 from Firefishy/T7101
T7101: Add hardware watchdog support via systemd
Diffstat (limited to 'interface-definitions')
-rw-r--r--interface-definitions/system_watchdog.xml.in70
1 files changed, 70 insertions, 0 deletions
diff --git a/interface-definitions/system_watchdog.xml.in b/interface-definitions/system_watchdog.xml.in
new file mode 100644
index 000000000..c651bc652
--- /dev/null
+++ b/interface-definitions/system_watchdog.xml.in
@@ -0,0 +1,70 @@
+<?xml version="1.0"?>
+<interfaceDefinition>
+ <node name="system">
+ <children>
+ <node name="watchdog" owner="${vyos_conf_scripts_dir}/system_watchdog.py">
+ <properties>
+ <help>Hardware watchdog configuration</help>
+ <priority>9999</priority>
+ </properties>
+ <children>
+ <leafNode name="module">
+ <properties>
+ <help>Kernel module to load for watchdog device (optional)</help>
+ <valueHelp>
+ <format>txt</format>
+ <description>Module name (e.g. 'softdog', 'iTCO_wdt', 'sp5100_tco')</description>
+ </valueHelp>
+ <constraint>
+ <validator name="watchdog-module"/>
+ </constraint>
+ <constraintErrorMessage>Module must be an available watchdog kernel driver module</constraintErrorMessage>
+ </properties>
+ </leafNode>
+ <leafNode name="timeout">
+ <properties>
+ <help>Watchdog timeout for runtime in seconds (1-65535)</help>
+ <valueHelp>
+ <format>u32:1-65535</format>
+ <description>Seconds</description>
+ </valueHelp>
+ <constraint>
+ <validator name="numeric" argument="--range 1-65535"/>
+ </constraint>
+ <constraintErrorMessage>Timeout must be between 1 and 65535 seconds</constraintErrorMessage>
+ </properties>
+ <defaultValue>10</defaultValue>
+ </leafNode>
+ <leafNode name="shutdown-timeout">
+ <properties>
+ <help>Watchdog timeout during shutdown in seconds (60-65535)</help>
+ <valueHelp>
+ <format>u32:60-65535</format>
+ <description>Seconds</description>
+ </valueHelp>
+ <constraint>
+ <validator name="numeric" argument="--range 60-65535"/>
+ </constraint>
+ <constraintErrorMessage>Shutdown timeout must be between 60 and 65535 seconds</constraintErrorMessage>
+ </properties>
+ <defaultValue>120</defaultValue>
+ </leafNode>
+ <leafNode name="reboot-timeout">
+ <properties>
+ <help>Watchdog timeout during reboot in seconds (60-65535)</help>
+ <valueHelp>
+ <format>u32:60-65535</format>
+ <description>Seconds</description>
+ </valueHelp>
+ <constraint>
+ <validator name="numeric" argument="--range 60-65535"/>
+ </constraint>
+ <constraintErrorMessage>Reboot timeout must be between 60 and 65535 seconds</constraintErrorMessage>
+ </properties>
+ <defaultValue>120</defaultValue>
+ </leafNode>
+ </children>
+ </node>
+ </children>
+ </node>
+</interfaceDefinition>