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 #ifndef _ASM_POWERPC_MC146818RTC_H
2 #define _ASM_POWERPC_MC146818RTC_H
3 
4 /*
5  * Machine dependent access functions for RTC registers.
6  *
7  * This program is free software; you can redistribute it and/or
8  * modify it under the terms of the GNU General Public License
9  * as published by the Free Software Foundation; either version
10  * 2 of the License, or (at your option) any later version.
11  */
12 
13 #ifdef __KERNEL__
14 
15 #include <asm/io.h>
16 
17 #ifndef RTC_PORT
18 #define RTC_PORT(x) (0x70 + (x))
19 #define RTC_ALWAYS_BCD 1 /* RTC operates in binary mode */
20 #endif
21 
22 /*
23  * The yet supported machines all access the RTC index register via
24  * an ISA port access but the way to access the date register differs ...
25  */
26 #define CMOS_READ(addr) ({ \
27 outb_p((addr),RTC_PORT(0)); \
28 inb_p(RTC_PORT(1)); \
29 })
30 #define CMOS_WRITE(val, addr) ({ \
31 outb_p((addr),RTC_PORT(0)); \
32 outb_p((val),RTC_PORT(1)); \
33 })
34 
35 #endif /* __KERNEL__ */
36 #endif /* _ASM_POWERPC_MC146818RTC_H */