1 /* SPDX-License-Identifier: GPL-2.0+ */
3 * (C) Copyright 2007-2011
4 * Allwinner Technology Co., Ltd. <www.allwinnertech.com>
5 * Tom Cubie <tangliang@allwinnertech.com>
7 * Configuration settings for the Allwinner A10-evb board.
10 #ifndef _SUNXI_TIMER_H_
11 #define _SUNXI_TIMER_H_
15 #include <linux/types.h>
16 #include <asm/arch/watchdog.h>
18 /* General purpose timer */
44 u32 yymmdd; /* 0x104 */
45 u32 hhmmss; /* 0x108 */
50 u32 ddhhmmss; /* 0x10c */
51 u32 hhmmss; /* 0x110 */
53 u32 irqen; /* 0x118 */
54 u32 irqsta; /* 0x11c */
57 /* Timer general purpose register */
62 struct sunxi_timer_reg {
63 u32 tirqen; /* 0x00 */
64 u32 tirqsta; /* 0x04 */
66 struct sunxi_timer timer[6]; /* We have 6 timers */
69 #if defined(CONFIG_SUNXI_GEN_SUN4I) || defined(CONFIG_MACH_SUN8I_R40)
70 struct sunxi_wdog wdog; /* 0x90 */
71 /* XXX the following is not accurate for sun5i/sun7i */
72 struct sunxi_64cnt cnt64; /* 0xa0 */
75 struct sunxi_alarm alarm;
76 struct sunxi_tgp tgp[4];
79 #elif defined(CONFIG_SUNXI_GEN_SUN6I) || defined(CONFIG_SUN50I_GEN_H6)
81 struct sunxi_wdog wdog[5]; /* We have 5 watchdogs */
85 #endif /* __ASSEMBLY__ */