blob: dced0a17a62b37ec1625f80d8d2e74ae0e475866 [file] [log] [blame]
Tom Rini10e47792018-05-06 17:58:06 -04001/* SPDX-License-Identifier: GPL-2.0+ */
Vipin KUMAR7cb16352010-01-15 19:15:43 +05302/*
3 * (C) Copyright 2009
4 * Vipin Kumar, ST Micoelectronics, vipin.kumar@st.com.
Vipin KUMAR7cb16352010-01-15 19:15:43 +05305 */
6
7#ifndef _SPR_GPT_H
8#define _SPR_GPT_H
9
10struct gpt_regs {
11 u8 reserved[0x80];
12 u32 control;
13 u32 status;
14 u32 compare;
15 u32 count;
16 u32 capture_re;
17 u32 capture_fe;
18};
19
20/*
21 * TIMER_CONTROL register settings
22 */
23
24#define GPT_PRESCALER_MASK 0x000F
25#define GPT_PRESCALER_1 0x0000
26#define GPT_PRESCALER_2 0x0001
27#define GPT_PRESCALER_4 0x0002
28#define GPT_PRESCALER_8 0x0003
29#define GPT_PRESCALER_16 0x0004
30#define GPT_PRESCALER_32 0x0005
31#define GPT_PRESCALER_64 0x0006
32#define GPT_PRESCALER_128 0x0007
33#define GPT_PRESCALER_256 0x0008
34
35#define GPT_MODE_SINGLE_SHOT 0x0010
36#define GPT_MODE_AUTO_RELOAD 0x0000
37
38#define GPT_ENABLE 0x0020
39
40#define GPT_CAPT_MODE_MASK 0x00C0
41#define GPT_CAPT_MODE_NONE 0x0000
42#define GPT_CAPT_MODE_RE 0x0040
43#define GPT_CAPT_MODE_FE 0x0080
44#define GPT_CAPT_MODE_BOTH 0x00C0
45
46#define GPT_INT_MATCH 0x0100
47#define GPT_INT_FE 0x0200
48#define GPT_INT_RE 0x0400
49
50/*
51 * TIMER_STATUS register settings
52 */
53
54#define GPT_STS_MATCH 0x0001
55#define GPT_STS_FE 0x0002
56#define GPT_STS_RE 0x0004
57
58/*
59 * TIMER_COMPARE register settings
60 */
61
62#define GPT_FREE_RUNNING 0xFFFF
63
64/* Timer, HZ specific defines */
Amit Virdi9ee8d632012-05-07 13:07:01 +053065#define CONFIG_SPEAR_HZ 1000
66#define CONFIG_SPEAR_HZ_CLOCK 8300000
Vipin KUMAR7cb16352010-01-15 19:15:43 +053067
68#endif