github.com/google/syzkaller@v0.0.0-20240517125934-c0f1611a36d6/sys/linux/dev_rtc.txt (about)

     1  # Copyright 2018 syzkaller project authors. All rights reserved.
     2  # Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file.
     3  
     4  include <linux/rtc.h>
     5  
     6  resource fd_rtc[fd]
     7  
     8  openat$rtc(fd const[AT_FDCWD], file ptr[in, string["/dev/rtc0"]], flags flags[open_flags], mode const[0]) fd_rtc
     9  syz_open_dev$rtc(dev ptr[in, string["/dev/rtc#"]], id intptr, flags flags[open_flags]) fd_rtc
    10  
    11  ioctl$RTC_AIE_OFF(fd fd_rtc, cmd const[RTC_AIE_OFF])
    12  ioctl$RTC_AIE_ON(fd fd_rtc, cmd const[RTC_AIE_ON])
    13  ioctl$RTC_PIE_OFF(fd fd_rtc, cmd const[RTC_PIE_OFF])
    14  ioctl$RTC_PIE_ON(fd fd_rtc, cmd const[RTC_PIE_ON])
    15  ioctl$RTC_UIE_OFF(fd fd_rtc, cmd const[RTC_UIE_OFF])
    16  ioctl$RTC_UIE_ON(fd fd_rtc, cmd const[RTC_UIE_ON])
    17  ioctl$RTC_WIE_ON(fd fd_rtc, cmd const[RTC_WIE_ON])
    18  ioctl$RTC_WIE_OFF(fd fd_rtc, cmd const[RTC_WIE_OFF])
    19  ioctl$RTC_ALM_READ(fd fd_rtc, cmd const[RTC_ALM_READ], arg ptr[out, rtc_time])
    20  ioctl$RTC_ALM_SET(fd fd_rtc, cmd const[RTC_ALM_SET], arg ptr[in, rtc_time])
    21  ioctl$RTC_RD_TIME(fd fd_rtc, cmd const[RTC_RD_TIME], arg ptr[out, rtc_time])
    22  ioctl$RTC_SET_TIME(fd fd_rtc, cmd const[RTC_SET_TIME], arg ptr[in, rtc_time])
    23  ioctl$RTC_IRQP_READ(fd fd_rtc, cmd const[RTC_IRQP_READ], arg ptr[out, intptr])
    24  ioctl$RTC_IRQP_SET(fd fd_rtc, cmd const[RTC_IRQP_SET], arg intptr[1:RTC_MAX_FREQ])
    25  ioctl$RTC_EPOCH_READ(fd fd_rtc, cmd const[RTC_EPOCH_READ], arg ptr[out, intptr])
    26  ioctl$RTC_EPOCH_SET(fd fd_rtc, cmd const[RTC_EPOCH_SET], arg intptr)
    27  ioctl$RTC_WKALM_RD(fd fd_rtc, cmd const[RTC_WKALM_RD], arg ptr[out, rtc_wkalrm])
    28  ioctl$RTC_WKALM_SET(fd fd_rtc, cmd const[RTC_WKALM_SET], arg ptr[in, rtc_wkalrm])
    29  ioctl$RTC_PLL_GET(fd fd_rtc, cmd const[RTC_PLL_GET], arg ptr[out, rtc_pll_info])
    30  ioctl$RTC_PLL_SET(fd fd_rtc, cmd const[RTC_PLL_SET], arg ptr[in, rtc_pll_info])
    31  ioctl$RTC_VL_READ(fd fd_rtc, cmd const[RTC_VL_READ], arg ptr[out, int32])
    32  ioctl$RTC_VL_CLR(fd fd_rtc, cmd const[RTC_VL_CLR])
    33  
    34  rtc_time {
    35  	tm_sec		int32[0:60]
    36  	tm_min		int32[0:59]
    37  	tm_hour		int32[0:23]
    38  	tm_mday		int32[1:31]
    39  	tm_mon		int32[0:11]
    40  	tm_year		int32
    41  	tm_wday		int32[0:6]
    42  	tm_yday		int32[0:365]
    43  	tm_isdst	flags[rtc_isdst, int32]
    44  }
    45  
    46  rtc_wkalrm {
    47  	enabled	bool8
    48  	pending	bool8
    49  	time	rtc_time
    50  }
    51  
    52  rtc_pll_info {
    53  	pll_ctrl	int32
    54  	pll_value	int32
    55  	pll_max		int32
    56  	pll_min		int32
    57  	pll_posmult	int32
    58  	pll_negmult	int32
    59  	pll_clock	intptr
    60  }
    61  
    62  rtc_isdst = 0, 1, -1