RTC

简介

AIBOX-3576 有一路外部的 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