aboutsummaryrefslogtreecommitdiffstats
path: root/include/asm-mips/ds1216.h
blob: 1ff8b73f7a6a78410c4f55badddfd7da3f1a080c (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#ifndef _DS1216_H
#define _DS1216_H

extern volatile unsigned char *ds1216_base;
unsigned long ds1216_get_cmos_time(void);
int ds1216_set_rtc_mmss(unsigned long nowtime);

#define DS1216_SEC_BYTE		1
#define DS1216_MIN_BYTE		2
#define DS1216_HOUR_BYTE	3
#define DS1216_HOUR_MASK	(0x1f)
#define DS1216_AMPM_MASK	(1<<5)
#define DS1216_1224_MASK	(1<<7)
#define DS1216_DAY_BYTE		4
#define DS1216_DAY_MASK		(0x7)
#define DS1216_DATE_BYTE	5
#define DS1216_DATE_MASK	(0x3f)
#define DS1216_MONTH_BYTE	6
#define DS1216_MONTH_MASK	(0x1f)
#define DS1216_YEAR_BYTE	7

#define DS1216_SEC(buf)		(buf[DS1216_SEC_BYTE])
#define DS1216_MIN(buf)		(buf[DS1216_MIN_BYTE])
#define DS1216_HOUR(buf)	(buf[DS1216_HOUR_BYTE] & DS1216_HOUR_MASK)
#define DS1216_AMPM(buf)	(buf[DS1216_HOUR_BYTE] & DS1216_AMPM_MASK)
#define DS1216_1224(buf)	(buf[DS1216_HOUR_BYTE] & DS1216_1224_MASK)
#define DS1216_DATE(buf)	(buf[DS1216_DATE_BYTE] & DS1216_DATE_MASK)
#define DS1216_MONTH(buf)	(buf[DS1216_MONTH_BYTE] & DS1216_MONTH_MASK)
#define DS1216_YEAR(buf)	(buf[DS1216_YEAR_BYTE])

#endif