module: try_then_request_module must wait
[linux-2.6] / include / linux / rtc-v3020.h
1 /*
2  * v3020.h - Registers definition and platform data structure for the v3020 RTC.
3  *
4  * This file is subject to the terms and conditions of the GNU General Public
5  * License.  See the file "COPYING" in the main directory of this archive
6  * for more details.
7  *
8  * Copyright (C) 2006, 8D Technologies inc.
9  */
10 #ifndef __LINUX_V3020_H
11 #define __LINUX_V3020_H
12
13 /* The v3020 has only one data pin but which one
14  * is used depends on the board. */
15 struct v3020_platform_data {
16         int leftshift; /* (1<<(leftshift)) & readl() */
17
18         int use_gpio:1;
19         unsigned int gpio_cs;
20         unsigned int gpio_wr;
21         unsigned int gpio_rd;
22         unsigned int gpio_io;
23 };
24
25 #define V3020_STATUS_0  0x00
26 #define V3020_STATUS_1  0x01
27 #define V3020_SECONDS   0x02
28 #define V3020_MINUTES   0x03
29 #define V3020_HOURS             0x04
30 #define V3020_MONTH_DAY 0x05
31 #define V3020_MONTH             0x06
32 #define V3020_YEAR              0x07
33 #define V3020_WEEK_DAY  0x08
34 #define V3020_WEEK              0x09
35
36 #define V3020_IS_COMMAND(val) ((val)>=0x0E)
37
38 #define V3020_CMD_RAM2CLOCK     0x0E
39 #define V3020_CMD_CLOCK2RAM     0x0F
40
41 #endif /* __LINUX_V3020_H */