1 /* 2 * This header was generated from the Linux kernel headers by update_headers.py, 3 * to provide necessary information from kernel to userspace, such as constants, 4 * structures, and macros, and thus, contains no copyrightable information. 5 */ 6 #ifndef _UAPI_LINUX_RTC_H_ 7 #define _UAPI_LINUX_RTC_H_ 8 struct rtc_time { 9 int tm_sec; 10 int tm_min; 11 int tm_hour; 12 int tm_mday; 13 int tm_mon; 14 int tm_year; 15 int tm_wday; 16 int tm_yday; 17 int tm_isdst; 18 }; 19 struct rtc_wkalrm { 20 unsigned char enabled; 21 unsigned char pending; 22 struct rtc_time time; 23 }; 24 struct rtc_pll_info { 25 int pll_ctrl; 26 int pll_value; 27 int pll_max; 28 int pll_min; 29 int pll_posmult; 30 int pll_negmult; 31 long pll_clock; 32 }; 33 #define RTC_AIE_ON _IO('p', 0x01) 34 #define RTC_AIE_OFF _IO('p', 0x02) 35 #define RTC_UIE_ON _IO('p', 0x03) 36 #define RTC_UIE_OFF _IO('p', 0x04) 37 #define RTC_PIE_ON _IO('p', 0x05) 38 #define RTC_PIE_OFF _IO('p', 0x06) 39 #define RTC_WIE_ON _IO('p', 0x0f) 40 #define RTC_WIE_OFF _IO('p', 0x10) 41 #define RTC_ALM_SET _IOW('p', 0x07, struct rtc_time) 42 #define RTC_ALM_READ _IOR('p', 0x08, struct rtc_time) 43 #define RTC_RD_TIME _IOR('p', 0x09, struct rtc_time) 44 #define RTC_SET_TIME _IOW('p', 0x0a, struct rtc_time) 45 #define RTC_IRQP_READ _IOR('p', 0x0b, unsigned long) 46 #define RTC_IRQP_SET _IOW('p', 0x0c, unsigned long) 47 #define RTC_EPOCH_READ _IOR('p', 0x0d, unsigned long) 48 #define RTC_EPOCH_SET _IOW('p', 0x0e, unsigned long) 49 #define RTC_WKALM_SET _IOW('p', 0x0f, struct rtc_wkalrm) 50 #define RTC_WKALM_RD _IOR('p', 0x10, struct rtc_wkalrm) 51 #define RTC_PLL_GET _IOR('p', 0x11, struct rtc_pll_info) 52 #define RTC_PLL_SET _IOW('p', 0x12, struct rtc_pll_info) 53 #define RTC_VL_READ _IOR('p', 0x13, int) 54 #define RTC_VL_CLR _IO('p', 0x14) 55 #define RTC_IRQF 0x80 56 #define RTC_PF 0x40 57 #define RTC_AF 0x20 58 #define RTC_UF 0x10 59 #define RTC_MAX_FREQ 8192 60 #endif 61