跳到主要内容

RTC

简介

AIBOX-3588 有一路外部的 RTC,由外部的底板电容进行供电,掉电后短时间内保证RTC运行。在 kernel 中表示为 rtc0

接口使用

Linux 提供了三种用户空间调用接口。路径为:

  • SYSFS接口:/sys/class/rtc/rtc0/
  • PROCFS接口: /proc/driver/rtc
  • IOCTL接口: /dev/rtc0

同步最新的系统时间到 RTC 内:

hwclock -w

SYSFS接口

可以直接使用 catecho 操作 /sys/class/rtc/rtc0/ 下面的接口。

比如查看当前 RTC 的日期和时间:

# cat /sys/class/rtc/rtc0/date
2024-07-10
# cat /sys/class/rtc/rtc0/time
02:36:30

PROCFS 接口

打印 RTC 相关的信息:

# cat /proc/driver/rtc
rtc_time : 02:37:00
rtc_date : 2024-07-10
alrm_time : 00:00:00
alrm_date : 1970-01-01
alarm_IRQ : no
alrm_pending : no
update IRQ enabled : no
periodic IRQ enabled : no
periodic IRQ frequency : 1
max user IRQ frequency : 64
24hr : yes

IOCTL接口

可以使用 ioctl 控制 /dev/rtc0

详细使用说明请参考文档 kernel-jammy-src/Documentation/admin-guide/rtc.rst