设置ALARM时需要ioctl RTC_ALM_SET和RTC_AIE_ON两个宏定义,其中RTC_ALM_SET设置的闹钟只有在24内有效,我们通过120~132行的代码也可以看出应用只设置了以时分秒为单位的值,假入我们将天/月/年也设上,133行的 retval = ioctl(fd, RTC_ALM_SET, &rtc_tm); 会调到kernel/drivers/rtc/rtc-dev.c的rtc_dev...
设置ALARM时需要ioctl RTC_ALM_SET和RTC_AIE_ON两个宏定义,其中RTC_ALM_SET设置的闹钟只有在24内有效,我们通过120~132行的代码也可以看出应用只设置了以时分秒为单位的值,假入我们将天/月/年也设上,133行的 retval = ioctl(fd, RTC_ALM_SET, &rtc_tm); 会调到kernel/drivers/rtc/rtc-dev.c的rtc_dev...
rtcsetYYYY-MM-DDThh:mm:ss [rtc] rtc wkalmrd [rtc] rtc wkalmset YYYY-MM-DDThh:mm:ss [rtc] rtc almread [rtc] rtc almset YYYY-MM-DDThh:mm:ss [rtc] rtc aieon [rtc] rtc aieoff [rtc] 如下是设置Alarm的流程: rtc rd--读取时间。 rtc aieon--打开aie中断。 rtc almset 2024-01-18...
int (*read_time)(struct device *, struct rtc_time *); int (*set_time)(struct device *, struct rtc_time *); int (*read_alarm)(struct device *, struct rtc_wkalrm *); int (*set_alarm)(struct device *, struct rtc_wkalrm *); int (*proc)(struct device *, struct seq_file *)...
RTC_ALM_SET rtc_set_alarm 设置闹钟时间 RTC_RD_TIME rtc_read_time 读取时间与日期 RTC_SET_TIME rtc_set_time 设置时间与日期 RTC_PIE_ON RTC_PIE_OFF rtc_irq_set_state 开关RTC全局中断的函数 RTC_AIE_ON RTC_AIE_OFF rtc_alarm_irq_enable 使能禁止RTC闹钟中断 ...
(alarm))) return -EFAULT; return rtc_set_alarm(rtc, &alarm); case RTC_WKALM_RD: //Get wakeup alarm mutex_unlock(&rtc->ops_lock); err = rtc_read_alarm(rtc, &alarm); if (err < 0) return err; if (copy_to_user(uarg, &alarm, sizeof(alarm))) err = -EFAULT; return err; ...
(*set_time)(struct device *, struct rtc_time *); //设置时间 int (*read_alarm)(struct device *, struct rtc_wkalrm *); //读取下一次定时中断的时间 int (*set_alarm)(struct device *, struct rtc_wkalrm *); //设置下一次定时中断的时间 int (*proc)(struct device *, struct seq_file ...
LOG_D("RTC: set rtc_time %x\n", *(rt_uint32_t *)args); break; #ifdef RT_USING_ALARM case RT_DEVICE_CTRL_RTC_GET_ALARM: args = &rtc_device.wkalarm; break; case RT_DEVICE_CTRL_RTC_SET_ALARM: p_wkalarm = (struct rt_rtc_wkalarm *)args; ...
("RTC: set rtc_time %x\n",*(rt_uint32_t*)args);break;#ifdef RT_USING_ALARMcaseRT_DEVICE_CTRL_RTC_GET_ALARM:args=&rtc_device.wkalarm;break;caseRT_DEVICE_CTRL_RTC_SET_ALARM:p_wkalarm=(structrt_rtc_wkalarm*)args;if(p_wkalarm!=RT_NULL){rtc_device.wkalarm.enable=p_wkalarm->...
RTC_WKALM_RD RTC_WKALM_SET Some RTCs support a more powerful alarm interface, using these ioctls to read or write the RTC's alarm time (respectively) with this structure: struct rtc_wkalrm { unsigned char enabled; unsigned char pending; struct rtc_time time; }; The enabled flag is used...