Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
mc146818rtc.h
Go to the documentation of this file.
1 /*
2  * This file is subject to the terms and conditions of the GNU General Public
3  * License. See the file "COPYING" in the main directory of this archive
4  * for more details.
5  *
6  * Copyright (C) 1998, 2001, 03 by Ralf Baechle
7  * Copyright (C) 2007 Thomas Bogendoerfer
8  *
9  * RTC routines for Jazz style attached Dallas chip.
10  */
11 #ifndef __ASM_MACH_JAZZ_MC146818RTC_H
12 #define __ASM_MACH_JAZZ_MC146818RTC_H
13 
14 #include <linux/delay.h>
15 
16 #include <asm/io.h>
17 #include <asm/jazz.h>
18 
19 #define RTC_PORT(x) (0x70 + (x))
20 #define RTC_IRQ 8
21 
22 static inline unsigned char CMOS_READ(unsigned long addr)
23 {
24  outb_p(addr, RTC_PORT(0));
25  return *(volatile char *)JAZZ_RTC_BASE;
26 }
27 
28 static inline void CMOS_WRITE(unsigned char data, unsigned long addr)
29 {
30  outb_p(addr, RTC_PORT(0));
31  *(volatile char *)JAZZ_RTC_BASE = data;
32 }
33 
34 #define RTC_ALWAYS_BCD 0
35 
36 #define mc146818_decode_year(year) ((year) + 1980)
37 
38 #endif /* __ASM_MACH_JAZZ_MC146818RTC_H */