RTEMS  5.1
m48t08.h
1 /*
2  * This file contains the definitions for the following real-time clocks:
3  *
4  * + Mostek M48T08
5  * + Mostek M48T18
6  * + Dallas Semiconductor DS1643
7  *
8  * COPYRIGHT (c) 1989-1999.
9  * On-Line Applications Research Corporation (OAR).
10  *
11  * The license and distribution terms for this file may be
12  * found in the file LICENSE in this distribution or at
13  * http://www.rtems.org/license/LICENSE.
14  */
15 
16 #ifndef __LIBCHIP_M48T08_h
17 #define __LIBCHIP_M48T08_h
18 
19 /*
20  * Register indices
21  */
22 
23 #define M48T08_CONTROL 0
24 #define M48T08_SECOND 1
25 #define M48T08_MINUTE 2
26 #define M48T08_HOUR 3
27 #define M48T08_DAY_OF_WEEK 4
28 #define M48T08_DATE 5
29 #define M48T08_MONTH 6
30 #define M48T08_YEAR 7
31 
32 /*
33  * Driver function table
34  */
35 
36 extern rtc_fns m48t08_fns;
37 
38 /*
39  * Default register access routines
40  */
41 
42 uint32_t m48t08_get_register( /* registers are at 1 byte boundaries */
43  uintptr_t ulCtrlPort, /* and accessed as bytes */
44  uint8_t ucRegNum
45 );
46 
47 void m48t08_set_register(
48  uintptr_t ulCtrlPort,
49  uint8_t ucRegNum,
50  uint32_t ucData
51 );
52 
53 uint32_t m48t08_get_register_2( /* registers are at 2 byte boundaries */
54  uintptr_t ulCtrlPort, /* and accessed as bytes */
55  uint8_t ucRegNum
56 );
57 
58 void m48t08_set_register_2(
59  uintptr_t ulCtrlPort,
60  uint8_t ucRegNum,
61  uint32_t ucData
62 );
63 
64 uint32_t m48t08_get_register_4( /* registers are at 4 byte boundaries */
65  uintptr_t ulCtrlPort, /* and accessed as bytes */
66  uint8_t ucRegNum
67 );
68 
69 void m48t08_set_register_4(
70  uintptr_t ulCtrlPort,
71  uint8_t ucRegNum,
72  uint32_t ucData
73 );
74 
75 uint32_t m48t08_get_register_8( /* registers are at 8 byte boundaries */
76  uintptr_t ulCtrlPort, /* and accessed as bytes */
77  uint8_t ucRegNum
78 );
79 
80 void m48t08_set_register_8(
81  uintptr_t ulCtrlPort,
82  uint8_t ucRegNum,
83  uint32_t ucData
84 );
85 
86 #endif
87 /* end of include file */
Definition: rtc.h:27