# STM32 IWDG configuration

# Copyright (c) 2016 Open-RnD Sp. z o.o.
# Copyright (c) 2017 RnDity Sp. z o.o.
# Copyright (c) 2019 Centaur Analytics, Inc
# SPDX-License-Identifier: Apache-2.0

menuconfig IWDG_STM32
	bool "Independent Watchdog (IWDG) Driver for STM32 family of MCUs"
	depends on SOC_FAMILY_STM32
	help
	  Enable IWDG driver for STM32 line of MCUs

config IWDG_STM32_TIMEOUT
	int "Value for IWDG timeout in [us]"
	depends on IWDG_STM32
	default 100
	range 100 26214400
	 help
	  Set timeout value for IWDG in microseconds.
	  The min timeout supported is 0.1ms, the max timeout is 26214.4ms.

config WWDG_STM32
	bool "System Window Watchdog (WWDG) Driver for STM32 family of MCUs"
	depends on SOC_FAMILY_STM32
	help
	  Enable WWDG driver for STM32 line of MCUs
