WATCHDOG: octeon-wdt: Use I/O clock rate for timing calculations.
The creation of the I/O clock domain requires some adjustments. Since the watchdog counters are clocked by the I/O clock, use its rate for timing calculations. Signed-off-by: David Daney <ddaney@caviumnetworks.com> Cc: Wim Van Sebroeck <wim@iguana.be> Cc: linux-watchdog@vger.kernel.org Patchwork: http://patchwork.linux-mips.org/patch/1659/ Acked-by: Wim Van Sebroeck <wim@iguana.be> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
This commit is contained in:
parent
1fa25ab2ca
commit
468ffde46d
1 changed files with 2 additions and 2 deletions
|
@ -478,7 +478,7 @@ static void octeon_wdt_calc_parameters(int t)
|
||||||
|
|
||||||
countdown_reset = periods > 2 ? periods - 2 : 0;
|
countdown_reset = periods > 2 ? periods - 2 : 0;
|
||||||
heartbeat = t;
|
heartbeat = t;
|
||||||
timeout_cnt = ((octeon_get_clock_rate() >> 8) * timeout_sec) >> 8;
|
timeout_cnt = ((octeon_get_io_clock_rate() >> 8) * timeout_sec) >> 8;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int octeon_wdt_set_heartbeat(int t)
|
static int octeon_wdt_set_heartbeat(int t)
|
||||||
|
@ -677,7 +677,7 @@ static int __init octeon_wdt_init(void)
|
||||||
max_timeout_sec = 6;
|
max_timeout_sec = 6;
|
||||||
do {
|
do {
|
||||||
max_timeout_sec--;
|
max_timeout_sec--;
|
||||||
timeout_cnt = ((octeon_get_clock_rate() >> 8) * max_timeout_sec) >> 8;
|
timeout_cnt = ((octeon_get_io_clock_rate() >> 8) * max_timeout_sec) >> 8;
|
||||||
} while (timeout_cnt > 65535);
|
} while (timeout_cnt > 65535);
|
||||||
|
|
||||||
BUG_ON(timeout_cnt == 0);
|
BUG_ON(timeout_cnt == 0);
|
||||||
|
|
Loading…
Reference in a new issue