IMX WDT: Difference between revisions
(fix toolchain link for Debian) |
No edit summary |
||
(7 intermediate revisions by 2 users not shown) | |||
Line 5: | Line 5: | ||
--> {{#lst:B2QT_Platform_Customization|{{#var:RELEASE_PARAM}}}} <!-- | --> {{#lst:B2QT_Platform_Customization|{{#var:RELEASE_PARAM}}}} <!-- | ||
--> {{#lst:Debian_Platform_Customization|{{#var:RELEASE_PARAM}}}} <!-- | --> {{#lst:Debian_Platform_Customization|{{#var:RELEASE_PARAM}}}} <!-- | ||
--> {{#ifexpr:{{#rpos:{{#var:SOC}}|mx8q}}<0| | --> {{#ifexpr:{{#rpos:{{#var:SOC}}|mx8q}}<0| | ||
{{#vardefine:WDT_CONFIG|CONFIG_IMX2_WDT}} | {{#vardefine:WDT_CONFIG|CONFIG_IMX2_WDT}} | ||
Line 13: | Line 12: | ||
{{#vardefine:WDT_DESCR|IMX SC Watchdog}} | {{#vardefine:WDT_DESCR|IMX SC Watchdog}} | ||
}} <!-- | }} <!-- | ||
--> {{PageHeader|{{#var:HARDWARE_NAME}} watchdog}} {{DocImage|category1=Yocto|category2={{#var:HARDWARE_NAME}} | --> {{PageHeader|{{#var:HARDWARE_NAME}} watchdog}} {{DocImage|category1=Yocto|category2=Debian}} [[category:{{#var:HARDWARE_NAME}}]] __toc__ | ||
= Kernel configuration= | = Kernel configuration= | ||
Line 29: | Line 28: | ||
= Compile a watchdog test application = | = Compile a watchdog test application = | ||
There's a watchdog testing utility C code example in the kernel source tree: tools/testing/selftests/watchdog-test.c (in older kernels: Documentation/watchdog/src/watchdog-test.c). | There's a watchdog testing utility C code example in the kernel source tree: {{#ifeq: {{KERNEL_VERSION_NEWER|6.6.23|{{#var:KERNEL_VER}}}} | true |tools/testing/selftests/watchdog-test.c|tools/testing/selftests/watchdog/watchdog-test.c}} (in older kernels: Documentation/watchdog/src/watchdog-test.c). | ||
To cross compile it:<br> | To cross compile it:<br> | ||
Install the toolchain and source the environment setup script, by following the {{Varlink2|{{#var: | Install the toolchain and source the environment setup script, by following the {{#varexists:FLEXBUILD_VERSION | {{Varlink2|Debian Flexbuild Toolchain installation|{{#var:RELEASE_LINK}}}} | {{Varlink2|Yocto Toolchain installation|{{#var:RELEASE_LINK}}}}}} guide, then run: | ||
$ $CC ./tools/testing/selftests/watchdog-test.c -o ./watchdog-test | {{#varexists:FLEXBUILD_VERSION | | ||
$ export CC=aarch64-linux-gnu-gcc | |||
|}} | |||
{{#ifeq: {{KERNEL_VERSION_NEWER|6.6.23|{{#var:KERNEL_VER}}}} | true | | |||
$ $CC ./tools/testing/selftests/watchdog-test.c -o ./watchdog-test | | |||
$ $CC ./tools/testing/selftests/watchdog/watchdog-test.c -o ./watchdog-test | |||
}} |
Latest revision as of 21:21, 5 June 2025
This page is using the default release RELEASE_SUMO_V1.0_VAR-SOM-MX6.
To view this page for a specific Variscite SoM and software release, please follow these steps:
- Visit variwiki.com
- Select your SoM
- Select the software release
Kernel configuration
The internal watchdog is enabled by default in the kernel configuration.
To verify that the i.MX watchdog driver (CONFIG_IMX2_WDT) is enabled in your kernel configuration:
- In menuconfig: Device Drivers -> Watchdog Timer Support -> <*> IMX2+ Watchdog
Using a command line
Watchdog will be activated as soon as /dev/watchdog is opened and will reboot unless the watchdog is pinged within timeout (128 is the preconfigured value).
# echo "1" > /dev/watchdog0
Within 128 seconds the board will reset.
Compile a watchdog test application
There's a watchdog testing utility C code example in the kernel source tree: tools/testing/selftests/watchdog-test.c (in older kernels: Documentation/watchdog/src/watchdog-test.c).
To cross compile it:
Install the toolchain and source the environment setup script, by following the Yocto Toolchain installation guide, then run:
$ $CC ./tools/testing/selftests/watchdog-test.c -o ./watchdog-test