structrtc_device{structdevicedev;structmodule*owner;intid;/* ID, 当前rtc设备在rtc子系统的子序号*/charname[RTC_DEVICE_NAME_SIZE];/* 名字 */conststructrtc_class_ops*ops;/* RTC 设备底层操作函数 */structmutexops_lock;structcdevchar_dev;/* 字符设备 */unsignedlongflags;unsignedlongirq_data;spin...
该函数(rtc_update_irq())可以从任何上下文(原子的或非原子的)调用。IRQ处理程序可能如下所示: staticirqreturn_t foo_rtc_alarm_irq(intirq,void*data) {structfoo_rtc_struct * foo_device =data; dev_info(foo_device->dev,"%s:irq(%d)\n", __func__, irq); rtc_update_irq(foo_device->rtc_de...
struct work_struct irqwork; #ifdef CONFIG_RTC_INTF_DEV_UIE_EMUL 内部仿真update interrupt时所需; struct work_struct uie_task; struct timer_list uie_timer; /* Those fields are protected by rtc->irq_lock */ unsigned int oldsecs; unsigned int uie_irq_active:1; unsigned int stop_uie_polling...
static irqreturn_t s3c_rtc_alarmirq(int irq, void *id) { struct rtc_device *rdev = id; clk_enable(rtc_clk); rtc_update_irq(rdev, 1, RTC_AF | RTC_IRQF); if (s3c_rtc_cpu_type == TYPE_S3C64XX) writeb(S3C2410_INTP_ALM, s3c_rtc_base + S3C2410_INTP); clk_disable(rtc_clk);...
rtc_timer_init(&rtc->aie_timer, rtc_aie_update_irq, (void *)rtc); // 2.6 Init uie timer:update interrupt,RTC更新中断 rtc_timer_init(&rtc->uie_rtctimer, rtc_uie_update_irq, (void *)rtc); /* Init pie timer:periodic interrupt,RTC周期性中断 */ ...
94 irqcount++; 95 } 96 /* Turn off update interrupts */ 97 retval = ioctl(fd, RTC_UIE_OFF, 0); 98 if (retval == -1) 99 { 100 perror("RTC_UIE_OFF ioctl"); 101 exit(errno); 102 } 103 #endif 104 //test_READ: 105 /* Read the RTC time/date */ ...
m48t59_rtc_interrupt--->rtc_update_irq(m48t59->rtc, 1, (RTC_AF | RTC_IRQF));--> -->rtc->irq_task->func(rtc->irq_task->private_data); wake_up_interruptible(&rtc->irq_queue); --> alarm_timer_triggered(struct hrtimer *timer) <alarm_enabled &= ~alarm_type_mask;> ...
update IRQ enabled : no periodic IRQ enabled : no periodic IRQ frequency :1max user IRQ frequency :6424hr : yes 信息来源: rtc_proc_fops -->rtc_proc_open -->rtc_proc_show 三、WT时间和RTC时间同步问题 1) WT时间来自于RTC时间,流程是: ...
update IRQ enabled : no periodic IRQ enabled : no periodic IRQ frequency : 1 max user IRQ frequency : 64 24hr : yes Time : 11:27:49.000000000 Date : 2024-11-11 Daylight : 0 Timezone : unspecified Alarm Time : 0:0:0.000000000
[root@XiaoLong/]# cat/proc/driver/rtc rtc_time:00:09:27rtc_date:2016-05-01alrm_time:23:24:07alrm_date:2016-05-01alarm_IRQ:no alrm_pending:no updateIRQenabled:no periodicIRQenabled:no periodicIRQfrequency:1max userIRQfrequency:3276824hr:yes periodic_IRQ:no ...