i.MX51 EVK Linux Reference Manual
Freescale Semiconductor
30-1
Chapter 30
Secure Real Time Clock (SRTC) Driver
The Secure Real Time Clock (SRTC) module is used to keep the time and date. It provides a certifiable
time to the user and can raise an alarm if tampering with counters is detected. The SRTC is composed of
two sub-modules: Low power domain (LP) and High power domain (HP). The SRTC driver only supports
the LP domain with low security mode.
30.1
Hardware Operation
The SRTC is a real time clock with enhanced security capabilities. It provides an accurate, constant time,
regardless of the main system power state and without the need to use an external on-board time source,
such as an external RTC. The SRTC can wake up the system when a pre-set alarm is reached.
30.2
Software Operation
The following sections describe the software operation of the SRTC driver.
30.2.1
IOCTL
The SRTC driver complies with the Linux RTC driver model. See the Linux documentation in
<ltib_dir>/rpm/BUILD/linux/Documentation/rtc.txt
for information on the RTC API.
Besides the initialization function, the SRTC driver provides IOCTL functions to set up the RTC timers
and alarm functions. The following RTC IOCTLs are implemented by the SRTC driver:
•
RTC_RD_TIME
•
RTC_SET_TIME
•
RTC_AIE_ON
•
RTC_AIE_OFF
•
RTC_ALM_READ
•
RTC_ALM_SET
In addition, the following IOCTLS were added to allow user application such as DRM to track changes in
the time, which is user settable. The DRM application needs a way to track how much the time changed
by so that it can manage its own secure clock = SRTC + secureclk_offset. The secureclk_offset should be
calculated by the DRM application based on changes to the SRTC time counter.
•
RTC_READ_TIME_47BIT: allows a read of the 47-bit LP time counter on SRTC
•
RTC_WAIT_FOR_TIME_SET: allows user thread to block until 47-bit LP time counter is set. At
which point, the user thread is woken up and is provided the SRTC offset (which is the difference
between the new and old LP counter)
Summary of Contents for i.MX51 EVK
Page 1: ...Part Number 924 76374 Rev 10 11 01 11 2010 i MX51 EVK Linux Reference Manual...
Page 14: ...i MX51 EVK Linux Reference Manual xiv Freescale Semiconductor...
Page 18: ...i MX51 EVK Linux Reference Manual xviii Freescale Semiconductor...
Page 24: ...i MX51 EVK Linux Reference Manual xxiv Freescale Semiconductor...
Page 38: ...Machine Specific Layer MSL i MX51 EVK Linux Reference Manual 2 8 Freescale Semiconductor...
Page 52: ...MC13892 Digitizer Driver i MX51 EVK Linux Reference Manual 5 4 Freescale Semiconductor...
Page 64: ...TV Encoder TVE Driver i MX51 EVK Linux Reference Manual 10 4 Freescale Semiconductor...
Page 82: ...Video for Linux Two V4L2 Driver i MX51 EVK Linux Reference Manual 12 8 Freescale Semiconductor...
Page 86: ...i MX5 Dual Display i MX51 EVK Linux Reference Manual 13 4 Freescale Semiconductor...
Page 100: ...X Windows Acceleration i MX51 EVK Linux Reference Manual 16 6 Freescale Semiconductor...
Page 118: ...Low Level Keypad Driver i MX51 EVK Linux Reference Manual 20 6 Freescale Semiconductor...
Page 134: ...Security Drivers i MX51 EVK Linux Reference Manual 22 10 Freescale Semiconductor...
Page 148: ...Inter IC I2C Driver i MX51 EVK Linux Reference Manual 24 4 Freescale Semiconductor...
Page 178: ...ARC USB Driver i MX51 EVK Linux Reference Manual 29 10 Freescale Semiconductor...
Page 194: ...OProfile i MX51 EVK Linux Reference Manual 33 6 Freescale Semiconductor...