Introduction

This page describes the AXI WDT driver which is available in mainline and Xilinx Linux distribution as
drivers/watchdog/of_xilinx_wdt.c

HW IP Features

  • Connects as a 32-bit slave on a AXI4-Lite interface
  • Watchdog timer with selectable timeout period and interrupt
  • Configurable WDT enable: enable-once or enable-repeatedly
  • One 32-bit free-running timebase counter with rollover interrupt-dual control register

Known Issues and Limitations

  • None

Kernel Configuration

The following config options should be enabled in order to build the macb driver:
CONFIG_XILINX_WATCHDOG
CONFIG_WATCHDOG
¦ Symbol: XILINX_WATCHDOG [=y] ¦
¦ Type : tristate ¦
¦ Prompt: Xilinx Watchdog timer ¦
¦ Location: ¦
¦ -> Device Drivers ¦
¦ (4) -> Watchdog Timer Support (WATCHDOG [=y]) ¦
¦ Defined at drivers/watchdog/Kconfig:171 ¦
¦ Depends on: WATCHDOG [=y] && HAS_IOMEM [=y] ¦
¦ Selects: WATCHDOG_CORE [=y]

Devicetree

For more details, please refer
Documentation/devicetree/bindings/watchdog/of-xilinx-wdt.txt
Example:
watchdog {
 
        compatible = "xlnx,xps-timebase-wdt-1.0.a";
        reg = <0x42600000 0x1000>;
        xlnx-wdt-enable-once = <0>;
        xlnx-wdt-interval = <0x1b>;
};

Test procedure

Change the parameters using IOCTLs and see if reported values is correct.
# /bin/wdt_app /dev/watchdog1
Last boot is caused by : Power-On-Reset
The timeout was is 42 seconds
root@uart:~#

Mainline Status

  • This driver is currently in sync with mainline kernel

Change Log

  • 2016.3
    • None
  • 2016.4
    • None
  • 2017.1
    • Summary
      • watchdog: xilinx: Add clock support.
      • watchdog: of_xilinx_wdt: Add clock adaptation support.

    • Commits
      • 9d6b4ef watchdog: xilinx: Add clock support.
      • 7f6adda watchdog: of_xilinx_wdt: Add clock adaptation support.

  • 2017.2
    • None
  • 2017.3
    • None
  • 2017.4
    • None
  • 2018.1
  • Summary
    • b6bc416 watchdog: of_xilinx_wdt: Add support for reading freq via CCF
    • watchdog: of_xilinx_wdt: Add suspend/resume support
  • Commits
    • b6bc416 watchdog: of_xilinx_wdt: Add support for reading freq via CCF
    • 6f671c6 watchdog: of_xilinx_wdt: Add suspend/resume support

Related Links