1951a39d68df598db08dfced8b4707755864a0492Ying Wang/****************************************************************************
2951a39d68df598db08dfced8b4707755864a0492Ying Wang ****************************************************************************
3951a39d68df598db08dfced8b4707755864a0492Ying Wang ***
4951a39d68df598db08dfced8b4707755864a0492Ying Wang ***   This header was automatically generated from a Linux kernel header
5951a39d68df598db08dfced8b4707755864a0492Ying Wang ***   of the same name, to make information necessary for userspace to
6951a39d68df598db08dfced8b4707755864a0492Ying Wang ***   call into the kernel available to libc.  It contains only constants,
7951a39d68df598db08dfced8b4707755864a0492Ying Wang ***   structures, and macros generated from the original header, and thus,
8951a39d68df598db08dfced8b4707755864a0492Ying Wang ***   contains no copyrightable information.
9951a39d68df598db08dfced8b4707755864a0492Ying Wang ***
10951a39d68df598db08dfced8b4707755864a0492Ying Wang ****************************************************************************
11951a39d68df598db08dfced8b4707755864a0492Ying Wang ****************************************************************************/
12951a39d68df598db08dfced8b4707755864a0492Ying Wang#ifndef _LINUX_RTC_H_
13951a39d68df598db08dfced8b4707755864a0492Ying Wang#define _LINUX_RTC_H_
14951a39d68df598db08dfced8b4707755864a0492Ying Wang
15951a39d68df598db08dfced8b4707755864a0492Ying Wangstruct rtc_time {
16951a39d68df598db08dfced8b4707755864a0492Ying Wang int tm_sec;
17951a39d68df598db08dfced8b4707755864a0492Ying Wang int tm_min;
18951a39d68df598db08dfced8b4707755864a0492Ying Wang int tm_hour;
19951a39d68df598db08dfced8b4707755864a0492Ying Wang int tm_mday;
20951a39d68df598db08dfced8b4707755864a0492Ying Wang int tm_mon;
21951a39d68df598db08dfced8b4707755864a0492Ying Wang int tm_year;
22951a39d68df598db08dfced8b4707755864a0492Ying Wang int tm_wday;
23951a39d68df598db08dfced8b4707755864a0492Ying Wang int tm_yday;
24951a39d68df598db08dfced8b4707755864a0492Ying Wang int tm_isdst;
25951a39d68df598db08dfced8b4707755864a0492Ying Wang};
26951a39d68df598db08dfced8b4707755864a0492Ying Wang
27951a39d68df598db08dfced8b4707755864a0492Ying Wangstruct rtc_wkalrm {
28951a39d68df598db08dfced8b4707755864a0492Ying Wang unsigned char enabled;
29951a39d68df598db08dfced8b4707755864a0492Ying Wang unsigned char pending;
30951a39d68df598db08dfced8b4707755864a0492Ying Wang struct rtc_time time;
31951a39d68df598db08dfced8b4707755864a0492Ying Wang};
32951a39d68df598db08dfced8b4707755864a0492Ying Wang
33951a39d68df598db08dfced8b4707755864a0492Ying Wangstruct rtc_pll_info {
34951a39d68df598db08dfced8b4707755864a0492Ying Wang int pll_ctrl;
35951a39d68df598db08dfced8b4707755864a0492Ying Wang int pll_value;
36951a39d68df598db08dfced8b4707755864a0492Ying Wang int pll_max;
37951a39d68df598db08dfced8b4707755864a0492Ying Wang int pll_min;
38951a39d68df598db08dfced8b4707755864a0492Ying Wang int pll_posmult;
39951a39d68df598db08dfced8b4707755864a0492Ying Wang int pll_negmult;
40951a39d68df598db08dfced8b4707755864a0492Ying Wang long pll_clock;
41951a39d68df598db08dfced8b4707755864a0492Ying Wang};
42951a39d68df598db08dfced8b4707755864a0492Ying Wang
43951a39d68df598db08dfced8b4707755864a0492Ying Wang#define RTC_AIE_ON _IO('p', 0x01)
44951a39d68df598db08dfced8b4707755864a0492Ying Wang#define RTC_AIE_OFF _IO('p', 0x02)
45951a39d68df598db08dfced8b4707755864a0492Ying Wang#define RTC_UIE_ON _IO('p', 0x03)
46951a39d68df598db08dfced8b4707755864a0492Ying Wang#define RTC_UIE_OFF _IO('p', 0x04)
47951a39d68df598db08dfced8b4707755864a0492Ying Wang#define RTC_PIE_ON _IO('p', 0x05)
48951a39d68df598db08dfced8b4707755864a0492Ying Wang#define RTC_PIE_OFF _IO('p', 0x06)
49951a39d68df598db08dfced8b4707755864a0492Ying Wang#define RTC_WIE_ON _IO('p', 0x0f)
50951a39d68df598db08dfced8b4707755864a0492Ying Wang#define RTC_WIE_OFF _IO('p', 0x10)
51951a39d68df598db08dfced8b4707755864a0492Ying Wang
52951a39d68df598db08dfced8b4707755864a0492Ying Wang#define RTC_ALM_SET _IOW('p', 0x07, struct rtc_time)
53951a39d68df598db08dfced8b4707755864a0492Ying Wang#define RTC_ALM_READ _IOR('p', 0x08, struct rtc_time)
54951a39d68df598db08dfced8b4707755864a0492Ying Wang#define RTC_RD_TIME _IOR('p', 0x09, struct rtc_time)
55951a39d68df598db08dfced8b4707755864a0492Ying Wang#define RTC_SET_TIME _IOW('p', 0x0a, struct rtc_time)
56951a39d68df598db08dfced8b4707755864a0492Ying Wang#define RTC_IRQP_READ _IOR('p', 0x0b, unsigned long)
57951a39d68df598db08dfced8b4707755864a0492Ying Wang#define RTC_IRQP_SET _IOW('p', 0x0c, unsigned long)
58951a39d68df598db08dfced8b4707755864a0492Ying Wang#define RTC_EPOCH_READ _IOR('p', 0x0d, unsigned long)
59951a39d68df598db08dfced8b4707755864a0492Ying Wang#define RTC_EPOCH_SET _IOW('p', 0x0e, unsigned long)
60951a39d68df598db08dfced8b4707755864a0492Ying Wang
61951a39d68df598db08dfced8b4707755864a0492Ying Wang#define RTC_WKALM_SET _IOW('p', 0x0f, struct rtc_wkalrm)
62951a39d68df598db08dfced8b4707755864a0492Ying Wang#define RTC_WKALM_RD _IOR('p', 0x10, struct rtc_wkalrm)
63951a39d68df598db08dfced8b4707755864a0492Ying Wang
64951a39d68df598db08dfced8b4707755864a0492Ying Wang#define RTC_PLL_GET _IOR('p', 0x11, struct rtc_pll_info)
65951a39d68df598db08dfced8b4707755864a0492Ying Wang#define RTC_PLL_SET _IOW('p', 0x12, struct rtc_pll_info)
66951a39d68df598db08dfced8b4707755864a0492Ying Wang
67951a39d68df598db08dfced8b4707755864a0492Ying Wang#define RTC_IRQF 0x80
68951a39d68df598db08dfced8b4707755864a0492Ying Wang#define RTC_PF 0x40
69951a39d68df598db08dfced8b4707755864a0492Ying Wang#define RTC_AF 0x20
70951a39d68df598db08dfced8b4707755864a0492Ying Wang#define RTC_UF 0x10
71951a39d68df598db08dfced8b4707755864a0492Ying Wang
72951a39d68df598db08dfced8b4707755864a0492Ying Wang#endif
73