1 /* 2 * Copyright (c) 2025 The FreeBSD Foundation 3 * 4 * SPDX-License-Identifier: BSD-2-Clause 5 */ 6 7 #ifndef _I6300ESBWD_H_ 8 #define _I6300ESBWD_H_ 9 10 #define WDT_CONFIG_REG 0x60 11 #define WDT_LOCK_REG 0x68 12 13 #define WDT_PRELOAD_1_REG 0x00 14 #define WDT_PRELOAD_2_REG 0x04 15 #define WDT_INTR_REG 0x08 16 #define WDT_RELOAD_REG 0x0C 17 18 /* For config register */ 19 #define WDT_OUTPUT_EN (0x1 << 5) 20 #define WDT_PRE_SEL (0x1 << 2) 21 #define WDT_INT_TYPE_BITS (0x3) 22 #define WDT_INT_TYPE_IRQ_VAL (0x0) 23 #define WDT_INT_TYPE_RES_VAL (0x1) 24 #define WDT_INT_TYPE_SMI_VAL (0x2) 25 #define WDT_INT_TYPE_DISABLED_VAL (0x3) 26 27 /* For lock register */ 28 #define WDT_TOUT_CNF_WT_MODE (0x0 << 2) 29 #define WDT_TOUT_CNF_FR_MODE (0x1 << 2) 30 #define WDT_ENABLE (0x02) 31 #define WDT_LOCK (0x01) 32 33 /* For preload 1/2 registers */ 34 #define WDT_PRELOAD_BIT 20 35 #define WDT_PRELOAD_BITS ((0x1 << WDT_PRELOAD_BIT) - 1) 36 37 /* For interrupt register */ 38 #define WDT_INTR_ACT (0x01 << 0) 39 40 /* For reload register */ 41 #define WDT_TIMEOUT (0x01 << 9) 42 #define WDT_RELOAD (0x01 << 8) 43 #define WDT_UNLOCK_SEQ_1_VAL 0x80 44 #define WDT_UNLOCK_SEQ_2_VAL 0x86 45 46 #endif /* _I6300ESBWD_H_ */ 47