RTEMS 6.1-rc2
Loading...
Searching...
No Matches
ds1375-rtc.h
1#ifndef DS1375_I2C_RTC_H
2#define DS1375_I2C_RTC_H
3
4/* Driver for the Maxim 1375 i2c RTC (TOD only; very simple...) */
5
6/*
7 * Authorship
8 * ----------
9 * This software was created by
10 *
11 * Till Straumann <strauman@slac.stanford.edu>, 2005-2007,
12 * Stanford Linear Accelerator Center, Stanford University.
13 *
14 * Acknowledgement of sponsorship
15 * ------------------------------
16 * The software was produced by
17 * the Stanford Linear Accelerator Center, Stanford University,
18 * under Contract DE-AC03-76SFO0515 with the Department of Energy.
19 *
20 * Government disclaimer of liability
21 * ----------------------------------
22 * Neither the United States nor the United States Department of Energy,
23 * nor any of their employees, makes any warranty, express or implied, or
24 * assumes any legal liability or responsibility for the accuracy,
25 * completeness, or usefulness of any data, apparatus, product, or process
26 * disclosed, or represents that its use would not infringe privately owned
27 * rights.
28 *
29 * Stanford disclaimer of liability
30 * --------------------------------
31 * Stanford University makes no representations or warranties, express or
32 * implied, nor assumes any liability for the use of this software.
33 *
34 * Stanford disclaimer of copyright
35 * --------------------------------
36 * Stanford University, owner of the copyright, hereby disclaims its
37 * copyright and all other rights in this software. Hence, anyone may
38 * freely use it for any purpose without restriction.
39 *
40 * Maintenance of notices
41 * ----------------------
42 * In the interest of clarity regarding the origin and status of this
43 * SLAC software, this and all the preceding Stanford University notices
44 * are to remain affixed to any copy or derivative of this software made
45 * or distributed by the recipient and are to be affixed to any copy of
46 * software made or distributed by the recipient that contains a copy or
47 * derivative of this software.
48 *
49 * ------------------ SLAC Software Notices, Set 4 OTT.002a, 2004 FEB 03
50 */
51
52#include <rtems.h>
53#include <libchip/rtc.h>
54#include <stdint.h>
55
56#ifdef __cplusplus
57extern "C" {
58#endif
59
60extern rtc_fns rtc_ds1375_fns;
61
62bool
63rtc_ds1375_device_probe( int minor );
64
65uint32_t
66rtc_ds1375_get_register( uintptr_t port, uint8_t reg );
67
68void
69rtc_ds1375_set_register( uintptr_t port, uint8_t reg, uint32_t value );
70
71/*
72 * BSP must supply string constant argument 'i2cname' which matches
73 * the registered device name of the raw i2c device (created with mknod).
74 * E.g., "/dev/i2c.ds1375-raw"
75 *
76 * NOTE: The i2c bus driver must already be up and 'i2cname' already
77 * be available when this ENTRY is registered or initialized.
78 *
79 * If you want to allow applications to add the RTC driver to
80 * the configuration table then the i2c subsystem must be
81 * initialized by the BSP from the predriver_hook.
82 */
83#define DS1375_RTC_TBL_ENTRY(i2cname) \
84{ \
85 sDeviceName: "/dev/rtc", \
86 deviceType: RTC_CUSTOM, \
87 pDeviceFns: &rtc_ds1375_fns, \
88 deviceProbe: rtc_ds1375_device_probe, \
89 ulCtrlPort1: (uintptr_t)(i2cname), \
90 ulDataPort: 0, \
91 getRegister: rtc_ds1375_get_register, \
92 setRegister: rtc_ds1375_set_register, \
93}
94
95#ifdef __cplusplus
96}
97#endif
98
99#endif
This header file defines the RTEMS Classic API.
Definition: rtc.h:46