In an effort to clean the documentation of the above package, remove duplicated words. Signed-off-by: Pierre Gondois <pierre.gondois@arm.com> Reviewed-by: Leif Lindholm <quic_llindhol@quicinc.com> Reviewed-by: Abner Chang <abner.chang@amd.com>
		
			
				
	
	
		
			160 lines
		
	
	
		
			4.5 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			160 lines
		
	
	
		
			4.5 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /** @file
 | |
|   Implement EFI RealTimeClock runtime services via RTC Lib.
 | |
| 
 | |
|   Currently this driver does not support runtime virtual calling.
 | |
| 
 | |
|   Copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>
 | |
| 
 | |
|   SPDX-License-Identifier: BSD-2-Clause-Patent
 | |
| 
 | |
| **/
 | |
| 
 | |
| #include <PiDxe.h>
 | |
| #include <Library/BaseLib.h>
 | |
| #include <Library/DebugLib.h>
 | |
| #include <Library/IoLib.h>
 | |
| #include <Library/RealTimeClockLib.h>
 | |
| 
 | |
| /**
 | |
|   Returns the current time and date information, and the time-keeping capabilities
 | |
|   of the hardware platform.
 | |
| 
 | |
|   @param  Time                  A pointer to storage to receive a snapshot of the current time.
 | |
|   @param  Capabilities          An optional pointer to a buffer to receive the real time clock
 | |
|                                 device's capabilities.
 | |
| 
 | |
|   @retval EFI_SUCCESS           The operation completed successfully.
 | |
|   @retval EFI_INVALID_PARAMETER Time is NULL.
 | |
|   @retval EFI_DEVICE_ERROR      The time could not be retrieved due to hardware error.
 | |
| 
 | |
| **/
 | |
| EFI_STATUS
 | |
| EFIAPI
 | |
| LibGetTime (
 | |
|   OUT EFI_TIME                *Time,
 | |
|   OUT  EFI_TIME_CAPABILITIES  *Capabilities
 | |
|   )
 | |
| {
 | |
|   //
 | |
|   // Fill in Time and Capabilities via data from you RTC
 | |
|   //
 | |
|   return EFI_DEVICE_ERROR;
 | |
| }
 | |
| 
 | |
| /**
 | |
|   Sets the current local time and date information.
 | |
| 
 | |
|   @param  Time                  A pointer to the current time.
 | |
| 
 | |
|   @retval EFI_SUCCESS           The operation completed successfully.
 | |
|   @retval EFI_INVALID_PARAMETER A time field is out of range.
 | |
|   @retval EFI_DEVICE_ERROR      The time could not be set due to hardware error.
 | |
| 
 | |
| **/
 | |
| EFI_STATUS
 | |
| EFIAPI
 | |
| LibSetTime (
 | |
|   IN EFI_TIME  *Time
 | |
|   )
 | |
| {
 | |
|   //
 | |
|   // Use Time, to set the time in your RTC hardware
 | |
|   //
 | |
|   return EFI_DEVICE_ERROR;
 | |
| }
 | |
| 
 | |
| /**
 | |
|   Returns the current wakeup alarm clock setting.
 | |
| 
 | |
|   @param  Enabled               Indicates if the alarm is currently enabled or disabled.
 | |
|   @param  Pending               Indicates if the alarm signal is pending and requires acknowledgement.
 | |
|   @param  Time                  The current alarm setting.
 | |
| 
 | |
|   @retval EFI_SUCCESS           The alarm settings were returned.
 | |
|   @retval EFI_INVALID_PARAMETER Any parameter is NULL.
 | |
|   @retval EFI_DEVICE_ERROR      The wakeup time could not be retrieved due to a hardware error.
 | |
| 
 | |
| **/
 | |
| EFI_STATUS
 | |
| EFIAPI
 | |
| LibGetWakeupTime (
 | |
|   OUT BOOLEAN   *Enabled,
 | |
|   OUT BOOLEAN   *Pending,
 | |
|   OUT EFI_TIME  *Time
 | |
|   )
 | |
| {
 | |
|   // Not a required feature
 | |
|   return EFI_UNSUPPORTED;
 | |
| }
 | |
| 
 | |
| /**
 | |
|   Sets the system wakeup alarm clock time.
 | |
| 
 | |
|   @param  Enabled               Enable or disable the wakeup alarm.
 | |
|   @param  Time                  If Enable is TRUE, the time to set the wakeup alarm for.
 | |
| 
 | |
|   @retval EFI_SUCCESS           If Enable is TRUE, then the wakeup alarm was enabled. If
 | |
|                                 Enable is FALSE, then the wakeup alarm was disabled.
 | |
|   @retval EFI_INVALID_PARAMETER A time field is out of range.
 | |
|   @retval EFI_DEVICE_ERROR      The wakeup time could not be set due to a hardware error.
 | |
|   @retval EFI_UNSUPPORTED       A wakeup timer is not supported on this platform.
 | |
| 
 | |
| **/
 | |
| EFI_STATUS
 | |
| EFIAPI
 | |
| LibSetWakeupTime (
 | |
|   IN BOOLEAN    Enabled,
 | |
|   OUT EFI_TIME  *Time
 | |
|   )
 | |
| {
 | |
|   // Not a required feature
 | |
|   return EFI_UNSUPPORTED;
 | |
| }
 | |
| 
 | |
| /**
 | |
|   This is the declaration of an EFI image entry point. This can be the entry point to an application
 | |
|   written to this specification, an EFI boot service driver, or an EFI runtime driver.
 | |
| 
 | |
|   @param  ImageHandle           Handle that identifies the loaded image.
 | |
|   @param  SystemTable           System Table for this image.
 | |
| 
 | |
|   @retval EFI_SUCCESS           The operation completed successfully.
 | |
| 
 | |
| **/
 | |
| EFI_STATUS
 | |
| EFIAPI
 | |
| LibRtcInitialize (
 | |
|   IN EFI_HANDLE        ImageHandle,
 | |
|   IN EFI_SYSTEM_TABLE  *SystemTable
 | |
|   )
 | |
| {
 | |
|   //
 | |
|   // Do some initialization if required to turn on the RTC
 | |
|   //
 | |
|   return EFI_SUCCESS;
 | |
| }
 | |
| 
 | |
| /**
 | |
|   Fixup internal data so that EFI can be call in virtual mode.
 | |
|   Call the passed in Child Notify event and convert any pointers in
 | |
|   lib to virtual mode.
 | |
| 
 | |
|   @param[in]    Event   The Event that is being processed
 | |
|   @param[in]    Context Event Context
 | |
| **/
 | |
| VOID
 | |
| EFIAPI
 | |
| LibRtcVirtualNotifyEvent (
 | |
|   IN EFI_EVENT  Event,
 | |
|   IN VOID       *Context
 | |
|   )
 | |
| {
 | |
|   //
 | |
|   // Only needed if you are going to support the OS calling RTC functions in virtual mode.
 | |
|   // You will need to call EfiConvertPointer (). To convert any stored physical addresses
 | |
|   // to virtual address. After the OS transitions to calling in virtual mode, all future
 | |
|   // runtime calls will be made in virtual mode.
 | |
|   //
 | |
|   return;
 | |
| }
 |