Lines Matching +full:enable +full:- +full:soft +full:- +full:reset

1 // SPDX-License-Identifier: GPL-2.0+
5 * Copyright (C) 2007-2017 Cavium, Inc.
11 * (c) Copyright 1996-1997 Alan Cox <alan@lxorguk.ukuu.org.uk>,
16 * "AS-IS" and at no charge.
25 * only result is a watchdog reset sooner than was requested. But
31 * irq is asserted, then if it is not reset, after the next period NMI
32 * is asserted, then after an additional period a chip wide soft reset.
33 * So for the software counters, we reset watchdog after each period
37 * to the serial port and then wait for the reset.
40 * one CPU suffers a lockup, we also get a register dump and reset.
63 #include <asm/octeon/cvmx-boot-vector.h>
64 #include <asm/octeon/cvmx-ciu2-defs.h>
65 #include <asm/octeon/cvmx-rst-defs.h>
81 /* Set to non-zero when userspace countdown mode active */
123 * octeon_wdt_poke_irq - Poke the watchdog when an interrupt is received
140 per_cpu_countdown[cpu]--; in octeon_wdt_poke_irq()
157 * octeon_wdt_write_string - Write a string to the uart
169 * octeon_wdt_write_hex() - Write a hex number out of the uart
180 v = (value >> ((digits - d - 1) * 4)) & 0xf; in octeon_wdt_write_hex()
182 prom_putchar('a' + v - 10); in octeon_wdt_write_hex()
274 octeon_wdt_write_string("*** Chip soft reset soon ***\r\n"); in octeon_wdt_nmi_stage3()
277 * G-30204: We must trigger a soft reset before watchdog in octeon_wdt_nmi_stage3()
288 * not too long. Do the soft reset before watchdog in octeon_wdt_nmi_stage3()
392 /* Finally enable the watchdog now that all handlers are installed */ in octeon_wdt_cpu_online()
395 ciu_wdog.s.mode = 3; /* 3 = Interrupt + NMI + Soft-Reset */ in octeon_wdt_cpu_online()
417 /* We have to enable the irq */ in octeon_wdt_ping()
437 timeout_sec--; in octeon_wdt_calc_parameters()
446 countdown_reset = periods > 2 ? periods - 2 : 0; in octeon_wdt_calc_parameters()
460 return -1; in octeon_wdt_set_timeout()
473 ciu_wdog.s.mode = 3; /* 3 = Interrupt + NMI + Soft-Reset */ in octeon_wdt_set_timeout()
515 * octeon_wdt_init - Module/ driver initialization.
526 return -ENOMEM; in octeon_wdt_init()
546 max_timeout_sec--; in octeon_wdt_init()
587 * octeon_wdt_cleanup - Module / driver shutdown
599 * Disable the boot-bus memory, the code it points to is soon in octeon_wdt_cleanup()