Merge tag 'drm-next-2019-09-27' of git://anongit.freedesktop.org/drm/drm
[platform/kernel/linux-rpi.git] / drivers / watchdog / omap_wdt.h
1 /* SPDX-License-Identifier: GPL-2.0+ */
2 /*
3  *  linux/drivers/char/watchdog/omap_wdt.h
4  *
5  *  BRIEF MODULE DESCRIPTION
6  *      OMAP Watchdog timer register definitions
7  *
8  *  Copyright (C) 2004 Texas Instruments.
9  */
10
11 #ifndef _OMAP_WATCHDOG_H
12 #define _OMAP_WATCHDOG_H
13
14 #define OMAP_WATCHDOG_REV               (0x00)
15 #define OMAP_WATCHDOG_SYS_CONFIG        (0x10)
16 #define OMAP_WATCHDOG_STATUS            (0x14)
17 #define OMAP_WATCHDOG_CNTRL             (0x24)
18 #define OMAP_WATCHDOG_CRR               (0x28)
19 #define OMAP_WATCHDOG_LDR               (0x2c)
20 #define OMAP_WATCHDOG_TGR               (0x30)
21 #define OMAP_WATCHDOG_WPS               (0x34)
22 #define OMAP_WATCHDOG_SPR               (0x48)
23
24 /* Using the prescaler, the OMAP watchdog could go for many
25  * months before firing.  These limits work without scaling,
26  * with the 60 second default assumed by most tools and docs.
27  */
28 #define TIMER_MARGIN_MAX        (24 * 60 * 60)  /* 1 day */
29 #define TIMER_MARGIN_DEFAULT    60      /* 60 secs */
30 #define TIMER_MARGIN_MIN        1
31
32 #define PTV                     0       /* prescale */
33 #define GET_WLDR_VAL(secs)      (0xffffffff - ((secs) * (32768/(1<<PTV))) + 1)
34 #define GET_WCCR_SECS(val)      ((0xffffffff - (val) + 1) / (32768/(1<<PTV)))
35
36 #endif                          /* _OMAP_WATCHDOG_H */