5 |
*/ |
*/ |
6 |
|
|
7 |
#ifndef BB_RTC_H |
#ifndef BB_RTC_H |
8 |
#define BB_RTC_H |
#define BB_RTC_H 1 |
9 |
|
|
10 |
#include "libbb.h" |
#include "libbb.h" |
11 |
|
|
12 |
#if __GNUC_PREREQ(4,1) |
PUSH_AND_SET_FUNCTION_VISIBILITY_TO_HIDDEN |
13 |
# pragma GCC visibility push(hidden) |
|
14 |
#endif |
int rtc_adjtime_is_utc(void) FAST_FUNC; |
15 |
|
int rtc_xopen(const char **default_rtc, int flags) FAST_FUNC; |
16 |
|
void rtc_read_tm(struct tm *ptm, int fd) FAST_FUNC; |
17 |
|
time_t rtc_tm2time(struct tm *ptm, int utc) FAST_FUNC; |
18 |
|
|
|
extern int rtc_adjtime_is_utc(void) FAST_FUNC; |
|
|
extern int rtc_xopen(const char **default_rtc, int flags) FAST_FUNC; |
|
|
extern time_t rtc_read_time(int fd, int utc) FAST_FUNC; |
|
19 |
|
|
20 |
/* |
/* |
21 |
* Everything below this point has been copied from linux/rtc.h |
* Everything below this point has been copied from linux/rtc.h |
44 |
* ioctl calls that are permitted to the /dev/rtc interface, if |
* ioctl calls that are permitted to the /dev/rtc interface, if |
45 |
* any of the RTC drivers are enabled. |
* any of the RTC drivers are enabled. |
46 |
*/ |
*/ |
47 |
|
#define RTC_AIE_ON _IO('p', 0x01) /* Alarm int. enable on */ |
48 |
|
#define RTC_AIE_OFF _IO('p', 0x02) /* ... off */ |
49 |
|
#define RTC_UIE_ON _IO('p', 0x03) /* Update int. enable on */ |
50 |
|
#define RTC_UIE_OFF _IO('p', 0x04) /* ... off */ |
51 |
|
#define RTC_PIE_ON _IO('p', 0x05) /* Periodic int. enable on */ |
52 |
|
#define RTC_PIE_OFF _IO('p', 0x06) /* ... off */ |
53 |
|
#define RTC_WIE_ON _IO('p', 0x0f) /* Watchdog int. enable on */ |
54 |
|
#define RTC_WIE_OFF _IO('p', 0x10) /* ... off */ |
55 |
|
|
56 |
|
#define RTC_ALM_SET _IOW('p', 0x07, struct linux_rtc_time) /* Set alarm time */ |
57 |
|
#define RTC_ALM_READ _IOR('p', 0x08, struct linux_rtc_time) /* Read alarm time */ |
58 |
|
#define RTC_RD_TIME _IOR('p', 0x09, struct linux_rtc_time) /* Read RTC time */ |
59 |
|
#define RTC_SET_TIME _IOW('p', 0x0a, struct linux_rtc_time) /* Set RTC time */ |
60 |
|
#define RTC_IRQP_READ _IOR('p', 0x0b, unsigned long) /* Read IRQ rate */ |
61 |
|
#define RTC_IRQP_SET _IOW('p', 0x0c, unsigned long) /* Set IRQ rate */ |
62 |
|
#define RTC_EPOCH_READ _IOR('p', 0x0d, unsigned long) /* Read epoch */ |
63 |
|
#define RTC_EPOCH_SET _IOW('p', 0x0e, unsigned long) /* Set epoch */ |
64 |
|
|
65 |
#define RTC_AIE_ON _IO('p', 0x01) /* Alarm int. enable on */ |
#define RTC_WKALM_SET _IOW('p', 0x0f, struct linux_rtc_wkalrm)/* Set wakeup alarm*/ |
66 |
#define RTC_AIE_OFF _IO('p', 0x02) /* ... off */ |
#define RTC_WKALM_RD _IOR('p', 0x10, struct linux_rtc_wkalrm)/* Get wakeup alarm*/ |
|
#define RTC_UIE_ON _IO('p', 0x03) /* Update int. enable on */ |
|
|
#define RTC_UIE_OFF _IO('p', 0x04) /* ... off */ |
|
|
#define RTC_PIE_ON _IO('p', 0x05) /* Periodic int. enable on */ |
|
|
#define RTC_PIE_OFF _IO('p', 0x06) /* ... off */ |
|
|
#define RTC_WIE_ON _IO('p', 0x0f) /* Watchdog int. enable on */ |
|
|
#define RTC_WIE_OFF _IO('p', 0x10) /* ... off */ |
|
|
|
|
|
#define RTC_ALM_SET _IOW('p', 0x07, struct linux_rtc_time) /* Set alarm time */ |
|
|
#define RTC_ALM_READ _IOR('p', 0x08, struct linux_rtc_time) /* Read alarm time */ |
|
|
#define RTC_RD_TIME _IOR('p', 0x09, struct linux_rtc_time) /* Read RTC time */ |
|
|
#define RTC_SET_TIME _IOW('p', 0x0a, struct linux_rtc_time) /* Set RTC time */ |
|
|
#define RTC_IRQP_READ _IOR('p', 0x0b, unsigned long) /* Read IRQ rate */ |
|
|
#define RTC_IRQP_SET _IOW('p', 0x0c, unsigned long) /* Set IRQ rate */ |
|
|
#define RTC_EPOCH_READ _IOR('p', 0x0d, unsigned long) /* Read epoch */ |
|
|
#define RTC_EPOCH_SET _IOW('p', 0x0e, unsigned long) /* Set epoch */ |
|
|
|
|
|
#define RTC_WKALM_SET _IOW('p', 0x0f, struct linux_rtc_wkalrm)/* Set wakeup alarm*/ |
|
|
#define RTC_WKALM_RD _IOR('p', 0x10, struct linux_rtc_wkalrm)/* Get wakeup alarm*/ |
|
67 |
|
|
68 |
/* interrupt flags */ |
/* interrupt flags */ |
69 |
#define RTC_IRQF 0x80 /* any of the following is active */ |
#define RTC_IRQF 0x80 /* any of the following is active */ |
71 |
#define RTC_AF 0x20 |
#define RTC_AF 0x20 |
72 |
#define RTC_UF 0x10 |
#define RTC_UF 0x10 |
73 |
|
|
74 |
#if __GNUC_PREREQ(4,1) |
POP_SAVED_FUNCTION_VISIBILITY |
|
# pragma GCC visibility pop |
|
|
#endif |
|
75 |
|
|
76 |
#endif |
#endif |