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 unsigned 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 */ 42