• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /** @file
2 
3   Copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>
4 
5   This program and the accompanying materials
6   are licensed and made available under the terms and conditions of the BSD License
7   which accompanies this distribution.  The full text of the license may be found at
8   http://opensource.org/licenses/bsd-license.php
9 
10   THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
11   WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
12 
13 **/
14 
15 
16 #ifndef __RUNTIME_SERVICES_LIB_H__
17 #define __RUNTIME_SERVICES_LIB_H__
18 
19 VOID
20 LibMtcInitialize (VOID);
21 
22 VOID
23 LibMtcVirtualAddressChangeEvent (VOID);
24 
25 EFI_STATUS
26 EFIAPI
27 LibMtcGetNextHighMonotonicCount (
28   OUT UINT32  *HighCount
29   );
30 
31 EFI_STATUS
32 LibMtcGetNextMonotonicCount (
33   OUT UINT64  *Count
34   );
35 
36 
37 
38 VOID
39 LibVariableInitialize (VOID);
40 
41 VOID
42 LibVariableVirtualAddressChangeEvent (VOID);
43 
44 EFI_STATUS
45 LibGetVariable (
46   IN CHAR16        *VariableName,
47   IN EFI_GUID      *VendorGuid,
48   OUT UINT32       *Attributes OPTIONAL,
49   IN OUT UINTN     *DataSize,
50   OUT VOID         *Data
51   );
52 
53 EFI_STATUS
54 LibGetNextVariableName (
55   IN OUT UINTN     *VariableNameSize,
56   IN OUT CHAR16    *VariableName,
57   IN OUT EFI_GUID  *VendorGuid
58   );
59 
60 EFI_STATUS
61 LibSetVariable (
62   IN CHAR16        *VariableName,
63   IN EFI_GUID      *VendorGuid,
64   IN UINT32        Attributes,
65   IN UINTN         DataSize,
66   IN VOID          *Data
67   );
68 
69 EFI_STATUS
70 LibQueryVariableInfo (
71   IN  UINT32                 Attributes,
72   OUT UINT64                 *MaximumVariableStorageSize,
73   OUT UINT64                 *RemainingVariableStorageSize,
74   OUT UINT64                 *MaximumVariableSize
75   );
76 
77 
78 
79 VOID
80 LibResetInitializeReset (VOID);
81 
82 VOID
83 LibResetVirtualAddressChangeEvent (VOID);
84 
85 VOID
86 LibResetSystem (
87   IN EFI_RESET_TYPE   ResetType,
88   IN EFI_STATUS       ResetStatus,
89   IN UINTN            DataSize,
90   IN CHAR16           *ResetData OPTIONAL
91   );
92 
93 
94 VOID
95 LibCapsuleInitialize (VOID);
96 
97 VOID
98 LibCapsuleVirtualAddressChangeEvent (VOID);
99 
100 EFI_STATUS
101 LibUpdateCapsule (
102   IN UEFI_CAPSULE_HEADER     **CapsuleHeaderArray,
103   IN UINTN                   CapsuleCount,
104   IN EFI_PHYSICAL_ADDRESS    ScatterGatherList OPTIONAL
105   );
106 
107 EFI_STATUS
108 QueryCapsuleCapabilities (
109   IN  UEFI_CAPSULE_HEADER  **CapsuleHeaderArray,
110   IN  UINTN                CapsuleCount,
111   OUT UINT64               *MaxiumCapsuleSize,
112   OUT EFI_RESET_TYPE       *ResetType
113   );
114 
115 
116 
117 VOID
118 LibRtcInitialize (VOID);
119 
120 VOID
121 LibRtcVirtualAddressChangeEvent (VOID);
122 
123 EFI_STATUS
124 LibGetTime (
125   OUT EFI_TIME                *Time,
126   OUT  EFI_TIME_CAPABILITIES  *Capabilities
127   );
128 
129 EFI_STATUS
130 LibSetTime (
131   IN EFI_TIME                *Time
132   );
133 
134 EFI_STATUS
135 LibGetWakeupTime (
136   OUT BOOLEAN     *Enabled,
137   OUT BOOLEAN     *Pending,
138   OUT EFI_TIME    *Time
139   );
140 
141 EFI_STATUS
142 LibSetWakeupTime (
143   IN BOOLEAN      Enabled,
144   OUT EFI_TIME    *Time
145   );
146 
147 
148 VOID
149 LibReportStatusCodeInitialize (VOID);
150 
151 VOID
152 LibReportStatusCodeVirtualAddressChangeEvent (VOID);
153 
154 EFI_STATUS
155 LibReportStatusCode (
156   IN EFI_STATUS_CODE_TYPE     CodeType,
157   IN EFI_STATUS_CODE_VALUE    Value,
158   IN UINT32                   Instance,
159   IN EFI_GUID                 *CallerId,
160   IN EFI_STATUS_CODE_DATA     *Data OPTIONAL
161   );
162 
163 
164 #endif
165 
166