blob: 66499614ca3ebc7e27e7924ddc9c42ac614bc985 [file] [log] [blame]
# Copyright (c) 2021, TOKITA Hiroshi
# SPDX-License-Identifier: Apache-2.0
description: GD32 free watchdog timer
compatible: "gd,gd32-fwdgt"
include: base.yaml
properties:
reg:
required: true
initial-timeout-ms:
type: int
default: 250
description: |
Set timeout value in milliseconds.
The following equation gives the maximum timeout value
timeout = (reload + 1) / (peripheral_freqency / prescaler).
where the maximum prescaler = 256 and the maximum reload = 4096.
The peripheral_frequency uses GD32_LOW_SPEED_IRC_FREQUENCY
that defined in modules/hal_gigadevice/Kconfig.
Validate the value is within a capable range at the compile time.
The default value defined is close to the register reset value
from values that don't cause calculation errors in both cases of
the low-speed internal RC oscillator frequency is 32kHz or 40kHz.
0.25 [timeout in sec] = (1999 [reload] + 1) / (32000 [freq] / 4 [prescaler])
0.25 [timeout in sec] = (2499 [reload] + 1) / (40000 [freq] / 4 [prescaler])