Description, Status codes returned – Intel Extensible Firmware Interface User Manual

Page 204

Advertising
background image

Extensible Firmware Interface Specification

6-12

12/01/02

Version 1.10


//*******************************************************
// EFI_TIME_CAPABILITIES
//*******************************************************
// This provides the capabilities of the

// real time clock device as exposed through the EFI interfaces.

typedef struct {

UINT32

Resolution;

UINT32

Accuracy;

BOOLEAN

SetsToZero;

} EFI_TIME_CAPABILITIES;

Resolution

Provides the reporting resolution of the real-time clock device in counts
per second. For a normal PC-AT CMOS RTC device, this value would
be 1 Hz, or 1, to indicate that the device only reports the time to the
resolution of 1 second.

Accuracy

Provides the timekeeping accuracy of the real-time clock in an error rate
of 1E-6 parts per million. For a clock with an accuracy of 50 parts per
million, the value in this field would be 50,000,000.

SetsToZero

A

TRUE

indicates that a time set operation clears the device’s time below

the

Resolution

reporting level. A

FALSE

indicates that the state

below the

Resolution

level of the device is not cleared when the time

is set. Normal PC-AT CMOS RTC devices set this value to

FALSE

.

Description

The

GetTime()

function returns a time that was valid sometime during the call to the function.

While the returned

EFI_TIME

structure contains

TimeZone

and

Daylight

savings time

information, the actual clock does not maintain these values. The current time zone and daylight
saving time information returned by

GetTime()

are the values that were last set via

SetTime()

.

The

GetTime()

function should take approximately the same amount of time to read the time

each time it is called. All reported device capabilities are to be rounded up.

During runtime, if a PC-AT CMOS device is present in the platform the caller must synchronize
access to the device before calling

GetTime()

.

Status Codes Returned

EFI_SUCCESS

The operation completed successfully.

EFI_INVALID_PARAMETER

Time

is

NULL

.

EFI_DEVICE_ERROR

The time could not be retrieved due to a hardware error.

Advertising