# NPCX WDT driver configuration options

# Copyright (c) 2021 Nuvoton Technology Corporation.
# SPDX-License-Identifier: Apache-2.0

config WDT_NPCX
	bool "Nuvoton NPCX embedded controller (EC) Watchdog Timer driver"
	default y
	depends on DT_HAS_NUVOTON_NPCX_WATCHDOG_ENABLED
	help
	  This option enables the Watchdog Timer driver for NPCX family of
	  processors.
	  Say y if you wish to use watchdog on NPCX MCU.

config WDT_NPCX_DELAY_CYCLES
	int "Number of delay cycles before generating watchdog event/signal"
	depends on WDT_NPCX
	range 1 255
	default 10
	help
	  This option defines the window in which a watchdog event must be
	  handled, in units of 31ms. After this time window, the watchdog reset
	  triggers immediately.
