~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/admin-guide/rtc.rst

Version: ~ [ linux-6.11.5 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.58 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.114 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.169 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.228 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.284 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.322 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.9 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /Documentation/admin-guide/rtc.rst (Version linux-6.11.5) and /Documentation/admin-guide/rtc.rst (Version linux-5.2.21)


  1 =======================================           
  2 Real Time Clock (RTC) Drivers for Linux           
  3 =======================================           
  4                                                   
  5 When Linux developers talk about a "Real Time     
  6 something that tracks wall clock time and is b    
  7 works even with system power off.  Such clocks    
  8 the local time zone or daylight savings time -    
  9 with MS-Windows -- but will instead be set to     
 10 (UTC, formerly "Greenwich Mean Time").            
 11                                                   
 12 The newest non-PC hardware tends to just count    
 13 system call reports, but RTCs also very common    
 14 the Gregorian calendar and 24 hour time, as re    
 15                                                   
 16 Linux has two largely-compatible userspace RTC    
 17 need to know about:                               
 18                                                   
 19     *   /dev/rtc ... is the RTC provided by PC    
 20         so it's not very portable to non-x86 s    
 21                                                   
 22     *   /dev/rtc0, /dev/rtc1 ... are part of a    
 23         supported by a wide variety of RTC chi    
 24                                                   
 25 Programmers need to understand that the PC/AT     
 26 always available, and some systems can do much    
 27 RTCs use the same API to make requests in both    
 28 different filenames of course), but the hardwa    
 29 same functionality.  For example, not every RT    
 30 IRQ, so they can't all issue alarms; and where    
 31 only issue an alarm up to 24 hours in the futu    
 32 be able to schedule one any time in the upcomi    
 33                                                   
 34                                                   
 35 Old PC/AT-Compatible driver:  /dev/rtc            
 36 --------------------------------------            
 37                                                   
 38 All PCs (even Alpha machines) have a Real Time    
 39 Usually they are built into the chipset of the    
 40 actually have a Motorola MC146818 (or clone) o    
 41 clock that keeps the date and time while your     
 42                                                   
 43 ACPI has standardized that MC146818 functional    
 44 a few ways (enabling longer alarm periods, and    
 45 That functionality is NOT exposed in the old d    
 46                                                   
 47 However it can also be used to generate signal    
 48 relatively fast 8192Hz, in increments of power    
 49 are reported by interrupt number 8. (Oh! So *t    
 50 for...) It can also function as a 24hr alarm,     
 51 alarm goes off. The alarm can also be programm    
 52 subset of the three programmable values, meani    
 53 ring on the 30th second of the 30th minute of     
 54 The clock can also be set to generate an inter    
 55 update, thus generating a 1Hz signal.             
 56                                                   
 57 The interrupts are reported via /dev/rtc (majo    
 58 character device) in the form of an unsigned l    
 59 the type of interrupt (update-done, alarm-rang    
 60 raised, and the remaining bytes contain the nu    
 61 the last read.  Status information is reported    
 62 /proc/driver/rtc if the /proc filesystem was e    
 63 built in locking so that only one process is a    
 64 interface open at a time.                         
 65                                                   
 66 A user process can monitor these interrupts by    
 67 select(2) on /dev/rtc -- either will block/sto    
 68 the next interrupt is received. This is useful    
 69 reasonably high frequency data acquisition whe    
 70 burn up 100% CPU by polling gettimeofday etc.     
 71                                                   
 72 At high frequencies, or under high loads, the     
 73 the number of interrupts received since the la    
 74 there has been any interrupt "pileup" so to sp    
 75 typical 486-33 running a tight read loop on /d    
 76 occasional interrupt pileup (i.e. > 1 IRQ even    
 77 frequencies above 1024Hz. So you really should    
 78 of the value you read, especially at frequenci    
 79 normal timer interrupt, which is 100Hz.           
 80                                                   
 81 Programming and/or enabling interrupt frequenc    
 82 only allowed by root. This is perhaps a bit co    
 83 an evil user generating lots of IRQs on a slow    
 84 a negative impact on performance. This 64Hz li    
 85 a different value to /proc/sys/dev/rtc/max-use    
 86 interrupt handler is only a few lines of code     
 87 of this effect.                                   
 88                                                   
 89 Also, if the kernel time is synchronized with     
 90 kernel will write the time back to the CMOS cl    
 91 the process of doing this, the kernel briefly     
 92 interrupts, so be aware of this if you are doi    
 93 don't synchronize the kernel time with an exte    
 94 whatever) then the kernel will keep its hands     
 95 exclusive access to the device for your applic    
 96                                                   
 97 The alarm and/or interrupt frequency are progr    
 98 various ioctl(2) calls as listed in ./include/    
 99 Rather than write 50 pages describing the ioct    
100 perhaps more useful to include a small test pr    
101 how to use them, and demonstrates the features    
102 probably a lot more useful to people intereste    
103 that will be using this driver.  See the code     
104                                                   
105 (The original /dev/rtc driver was written by P    
106                                                   
107                                                   
108 New portable "RTC Class" drivers:  /dev/rtcN      
109 --------------------------------------------      
110                                                   
111 Because Linux supports many non-ACPI and non-P    
112 have more than one RTC style clock, it needed     
113 than expecting a single battery-backed MC14681    
114 Accordingly, a new "RTC Class" framework has b    
115 three different userspace interfaces:             
116                                                   
117     *   /dev/rtcN ... much the same as the old    
118                                                   
119     *   /sys/class/rtc/rtcN ... sysfs attribut    
120         access to some RTC attributes.            
121                                                   
122     *   /proc/driver/rtc ... the system clock     
123         using a procfs interface. If there is     
124         rtc0 is used by default. More informat    
125         here than through sysfs.                  
126                                                   
127 The RTC Class framework supports a wide variet    
128 integrated into embeddable system-on-chip (SOC    
129 using I2C, SPI, or some other bus to communica    
130 even support for PC-style RTCs ... including t    
131 through ACPI.                                     
132                                                   
133 The new framework also removes the "one RTC pe    
134 example, maybe the low-power battery-backed RT    
135 a high functionality RTC is integrated into th    
136 the system clock from the discrete RTC, but us    
137 other tasks, because of its greater functional    
138                                                   
139 Check out tools/testing/selftests/rtc/rtctest.    
140 ioctl interface.                                  
                                                      

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php