/linux/drivers/watchdog/ |
H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 4 # Watchdog device configuration 7 menuconfig WATCHDOG config 8 bool "Watchdog Timer Support" 11 character special file /dev/watchdog with major number 10 and minor 12 number 130 using mknod ("man mknod"), you will get a watchdog, i.e.: 16 on-line as fast as possible after a lock-up. There's both a watchdog 18 reboot the machine) and a driver for hardware watchdog boards, which 21 <file:Documentation/watchdog/watchdog-api.rst> in the kernel source. 23 The watchdog is usually used together with the watchdog daemon [all …]
|
H A D | via_wdt.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * VIA Chipset Watchdog Driver 8 * Timer code by Wim Van Sebroeck <wim@iguana.be> 10 * Caveat: PnP must be enabled in BIOS to allow full access to watchdog 11 * control registers. If not, the watchdog must be configured in BIOS manually. 21 #include <linux/timer.h> 22 #include <linux/watchdog.h> 26 #define VIA_WDT_CONF 0xec /* watchdog enable state */ 29 #define VIA_WDT_CONF_ENABLE 0x01 /* 1: enable watchdog */ 30 #define VIA_WDT_CONF_MMIO 0x02 /* 1: enable watchdog MMIO */ [all …]
|
H A D | smsc37b787_wdt.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * SMsC 37B787 Watchdog Timer driver for Linux 2.6.x.x 9 * any of this software. This material is provided "AS-IS" in 12 * (C) Copyright 2003-2006 Sven Anders <anders@anduras.de> 15 * 2003 - Created version 1.0 for Linux 2.4.x. 16 * 2006 - Ported to Linux 2.6, added nowayout and MAGICCLOSE 21 * A Watchdog Timer (WDT) is a hardware circuit that can 26 * via the /dev/watchdog special device file that userspace is 28 * occurs, the driver will usually tell the hardware watchdog 29 * that everything is in order, and that the watchdog should wait [all …]
|
H A D | alim1535_wdt.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * Watchdog for the 7101 PMU version found in the ALi M1535 chipsets 12 #include <linux/watchdog.h> 36 "Watchdog timeout in seconds. (0 < timeout < 18000, default=" 42 "Watchdog cannot be stopped once started (default=" 46 * ali_start - start watchdog countdown 48 * Starts the timer running providing the timer has a counter 67 * ali_stop - stop the timer countdown 69 * Stop the ALi watchdog countdown 87 * ali_keepalive - send a keepalive to the watchdog [all …]
|
H A D | pika_wdt.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * PIKA FPGA based Watchdog Timer 19 #include <linux/watchdog.h> 22 #include <linux/timer.h> 29 #define DRV_NAME "PIKA-WDT" 34 /* Timer heartbeat (500ms) */ 41 MODULE_PARM_DESC(heartbeat, "Watchdog heartbeats in seconds. " 46 MODULE_PARM_DESC(nowayout, "Watchdog cannot be stopped once started " 51 unsigned long next_heartbeat; /* the next_heartbeat for the timer */ 55 struct timer_list timer; /* The timer that pings the watchdog */ member [all …]
|
H A D | sc520_wdt.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * AMD Elan SC520 processor Watchdog Timer driver 9 * any of this software. This material is provided "AS-IS" in 13 * 9/27 - 2001 [Initial release] 16 * - Fixed formatting 17 * - Removed debug printks 18 * - Fixed SMP built kernel deadlock 19 * - Switched to private locks not lock_kernel 20 * - Used ioremap/writew/readw 21 * - Added NOWAYOUT support [all …]
|
H A D | sa1100_wdt.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * Watchdog driver for the SA11x0/PXA2xx 10 * "AS-IS" and at no charge. 27 #include <linux/watchdog.h> 34 #define REG_OSMR0 0x0000 /* OS timer Match Reg. 0 */ 35 #define REG_OSMR1 0x0004 /* OS timer Match Reg. 1 */ 36 #define REG_OSMR2 0x0008 /* OS timer Match Reg. 2 */ 37 #define REG_OSMR3 0x000c /* OS timer Match Reg. 3 */ 38 #define REG_OSCR 0x0010 /* OS timer Counter Reg. */ 39 #define REG_OSSR 0x0014 /* OS timer Status Reg. */ [all …]
|
H A D | at91sam9_wdt.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * Watchdog driver for Atmel AT91SAM9x processors. 5 * Copyright (C) 2008 Renaud CERRATO r.cerrato@til-technologies.fr 10 * The Watchdog Timer Mode Register can be only written to once. If the 28 #include <linux/watchdog.h> 30 #include <linux/timer.h> 38 #define DRV_NAME "AT91SAM9 Watchdog" 41 readl_relaxed((wdt)->base + (field)) 43 writel_relaxed((val), (wdt)->base + (field)) 45 /* AT91SAM9 watchdog runs a 12bit counter @ 256Hz, [all …]
|
H A D | alim7101_wdt.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * ALi M7101 PMU Computer Watchdog Timer driver 6 * and the Cobalt kernel WDT timer driver by Tim Hockin 12 * drivers in that the driver will ping the watchdog by itself, 18 * Aug 23, 2004 - Added use_gpio module parameter for use on revision a1d PMUs 20 * -- Mike Waychison <michael.waychison@sun.com> 28 #include <linux/timer.h> 30 #include <linux/watchdog.h> 51 * If we reset the watchdog every ~250ms we should be safe. */ 58 * char to /dev/watchdog every 30 seconds. [all …]
|
H A D | cpwd.c | 1 // SPDX-License-Identifier: GPL-2.0-only 2 /* cpwd.c - driver implementation for hardware watchdog 5 * This device supports both the generic Linux watchdog 6 * interface and Solaris-compatible ioctls as best it is 11 * timer interrupts. We use a timer to periodically 28 #include <linux/timer.h> 38 #include <asm/watchdog.h> 42 #define WD_OBPNAME "watchdog" 43 #define WD_BADMODEL "SUNW,501-5336" 60 #define WD_STAT_INIT 0x01 /* Watchdog timer is initialized */ [all …]
|
H A D | sbc60xxwdt.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * 60xx Single Board Computer Watchdog Timer driver for Linux 2.2.x 8 * any of this software. This material is provided "AS-IS" in 13 * 12/4 - 2000 [Initial revision] 14 * 25/4 - 2000 Added /dev/watchdog support 15 * 09/5 - 2001 [smj@oro.net] fixed fop_write to "return 1" 17 * 12/4 - 2002 [rob@osinvestor.com] eliminate fop_read 28 * 09/8 - 2003 [wim@iguana.be] cleanup of trailing spaces 39 * *) The driver will ping the watchdog by itself, because this 50 #include <linux/timer.h> [all …]
|
H A D | it8712f_wdt.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * IT8712F "Smart Guardian" Watchdog support 5 * Copyright (c) 2006-2007 Jorge Boncompte - DTI2 <jorge@dti2.net> 9 * drivers/char/watchdog/scx200_wdt.c 11 * IT8712F EC-LPC I/O Preliminary Specification 0.8.2 12 * IT8712F EC-LPC I/O Preliminary Specification 0.9.3 16 * software is provided AS-IS with no warranties. 25 #include <linux/watchdog.h> 36 MODULE_AUTHOR("Jorge Boncompte - DTI2 <jorge@dti2.net>"); 37 MODULE_DESCRIPTION("IT8712F Watchdog Driver"); [all …]
|
H A D | w83877f_wdt.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * W83877F Computer Watchdog Timer driver 9 * any of this software. This material is provided "AS-IS" in 14 * 4/19 - 2001 [Initial revision] 15 * 9/27 - 2001 Added spinlocking 16 * 4/12 - 2002 [rob@osinvestor.com] Eliminate extra comments 27 * 09/8 - 2003 [wim@iguana.be] cleanup of trailing spaces 35 * drivers in that the driver will ping the watchdog by itself, 46 #include <linux/timer.h> 49 #include <linux/watchdog.h> [all …]
|
H A D | sb_wdog.c | 2 * Watchdog driver for SiByte SB1 SoCs 16 * It is a simple timer, and there is an interrupt that is raised the 17 * first time the timer expires. The second time it expires, the chip 26 * The timer takes 23 bits of a 64 bit register (?) as a count value, 30 * This watchdog borrows some user semantics from the softdog driver, 31 * in that if you close the fd, it leaves the watchdog running, unless 33 * the watchdog when you close the fd like some other drivers. 35 * Based on various other watchdog drivers, which are probably all 55 #include <linux/watchdog.h> 66 * set the initial count value of a timer [all …]
|
H A D | lpc18xx_wdt.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * NXP LPC18xx Watchdog Timer (WDT) 8 * ----- 9 * The Watchdog consists of a fixed divide-by-4 clock pre-scaler and a 24-bit 18 #include <linux/watchdog.h> 35 /* Clock pre-scaler */ 43 MODULE_PARM_DESC(heartbeat, "Watchdog heartbeats in seconds (default=" 48 MODULE_PARM_DESC(nowayout, "Watchdog cannot be stopped once started (default=" 57 struct timer_list timer; member 70 spin_lock_irqsave(&lpc18xx_wdt->lock, flags); in lpc18xx_wdt_feed() [all …]
|
H A D | gxp-wdt.c | 1 // SPDX-License-Identifier: GPL-2.0 2 /* Copyright (C) 2022 Hewlett-Packard Enterprise Development Company, L.P. */ 9 #include <linux/watchdog.h> 33 val = readb(drvdata->base + GXP_WDT_CTRL_OFS); in gxp_wdt_enable_reload() 35 writeb(val, drvdata->base + GXP_WDT_CTRL_OFS); in gxp_wdt_enable_reload() 42 writew(SECS_TO_WDOG_TICKS(wdd->timeout), drvdata->base + GXP_WDT_CNT_OFS); in gxp_wdt_start() 52 val = readb_relaxed(drvdata->base + GXP_WDT_CTRL_OFS); in gxp_wdt_stop() 54 writeb(val, drvdata->base + GXP_WDT_CTRL_OFS); in gxp_wdt_stop() 64 wdd->timeout = timeout; in gxp_wdt_set_timeout() 65 actual = min(timeout * 100, wdd->max_hw_heartbeat_ms / 10); in gxp_wdt_set_timeout() [all …]
|
H A D | wdt285.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * Intel 21285 watchdog driver 8 * SoftDog 0.05: A Software Watchdog Device 23 #include <linux/watchdog.h> 31 #include <asm/mach-types.h> 36 * Define this to stop the watchdog actually rebooting the machine. 46 * If the timer expires.. 57 * Refresh the timer. 72 return -EBUSY; in watchdog_open() 75 return -EBUSY; in watchdog_open() [all …]
|
/linux/Documentation/watchdog/ |
H A D | watchdog-kernel-api.rst | 2 The Linux WatchDog Timer Driver Core kernel API 5 Last reviewed: 12-Feb-2013 10 ------------ 11 This document does not describe what a WatchDog Timer (WDT) Driver or Device is. 13 with a WatchDog Timer. If you want to know this then please read the following 14 file: Documentation/watchdog/watchdog-api.rst . 17 WatchDog Timer Drivers that want to use the WatchDog Timer Driver Core 20 a watchdog timer driver then only needs to provide the different routines 21 (operations) that control the watchdog timer (WDT). 24 ------- [all …]
|
H A D | hpwdt.rst | 2 HPE iLO NMI Watchdog Driver 11 The HPE iLO NMI Watchdog driver is a kernel module that provides basic 12 watchdog functionality and handler for the iLO "Generate NMI to System" 18 Watchdog functionality is enabled like any other common watchdog driver. That 19 is, an application needs to be started that kicks off the watchdog timer. A 20 basic application exists in tools/testing/selftests/watchdog/ named 21 watchdog-test.c. Simply compile the C file and kick it off. If the system 22 gets into a bad state and hangs, the HPE ProLiant iLO timer register will 29 soft_margin allows the user to set the watchdog timer value. 32 pretimeout allows the user to set the watchdog pretimeout value. [all …]
|
/linux/Documentation/devicetree/bindings/watchdog/ |
H A D | snps,dw-wdt.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only 3 --- 4 $id: http://devicetree.org/schemas/watchdog/snps,dw-wdt.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Synopsys Designware Watchdog Timer 10 - Jamie Iles <jamie@jamieiles.com> 13 - $ref: watchdog.yaml# 18 - const: snps,dw-wdt 19 - items: 20 - enum: [all …]
|
H A D | qcom-wdt.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/watchdog/qcom-wdt.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Qualcomm Krait Processor Sub-system (KPSS) Watchdog timer 10 - Rajendra Nayak <quic_rjendra@quicinc.com> 14 pattern: "^(watchdog|timer)@[0-9a-f]+$" 18 - items: 19 - enum: 20 - qcom,kpss-wdt-ipq4019 [all …]
|
H A D | marvell,cn10624-wdt.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/watchdog/marvell,cn10624-wdt.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Marvell Global Timer (GTI) system watchdog 10 - Bharat Bhushan <bbhushan2@marvell.com> 13 - $ref: watchdog.yaml# 18 - enum: 19 - marvell,cn9670-wdt 20 - marvell,cn10624-wdt [all …]
|
/linux/Documentation/devicetree/bindings/mfd/ |
H A D | brcm,twd.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Broadcom's Timer-Watchdog (aka TWD) 10 - Rafał Miłecki <rafal@milecki.pl> 13 Broadcom has a Timer-Watchdog block used in multiple SoCs (e.g., BCM4908, 15 registers layout). This block consists of: timers, watchdog and optionally a 21 - enum: 22 - brcm,bcm4908-twd 23 - brcm,bcm7038-twd [all …]
|
/linux/arch/sparc/include/uapi/asm/ |
H A D | watchdog.h | 1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 4 * watchdog - Driver interface for the hardware watchdog timers 14 #include <linux/watchdog.h> 16 /* Solaris compatibility ioctls-- 17 * Ref. <linux/watchdog.h> for standard linux watchdog ioctls 19 #define WIOCSTART _IO (WATCHDOG_IOCTL_BASE, 10) /* Start Timer */ 20 #define WIOCSTOP _IO (WATCHDOG_IOCTL_BASE, 11) /* Stop Timer */ 21 #define WIOCGSTAT _IOR(WATCHDOG_IOCTL_BASE, 12, int)/* Get Timer Status */ 25 #define WD_FREERUN 0x01 /* timer is running, interrupts disabled */ 26 #define WD_EXPIRED 0x02 /* timer has expired */ [all …]
|
/linux/Documentation/devicetree/bindings/timer/ |
H A D | ingenic,tcu.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/timer/ingenic,tcu.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Ingenic SoCs Timer/Counter Unit (TCU) 11 Documentation/arch/mips/ingenic-tcu.rst. 14 - Paul Cercueil <paul@crapouillou.net> 21 - ingenic,jz4740-tcu 22 - ingenic,jz4725b-tcu 23 - ingenic,jz4760-tcu [all …]
|