08af44fe9f0a22898ccded1528c79c1c58b79fb7
[mirror_edk2.git] / IntelFrameworkPkg / Include / Common / FrameworkDxeCis.h
1 /** @file
2 Include file that supportes Framework extension to the EFI 1.10 spec.
3
4 This include file must only contain things defined in the Framework
5 specifications. If a code construct is defined in the Framework specification
6 it must be included by this include file.
7
8 Copyright (c) 2007, Intel Corporation
9 All rights reserved. This program and the accompanying materials
10 are licensed and made available under the terms and conditions of the BSD License
11 which accompanies this distribution. The full text of the license may be found at
12 http://opensource.org/licenses/bsd-license.php
13
14 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
15 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
16
17 Module Name: FrameworkDxeCis.h
18
19 **/
20
21 #ifndef _FRAMEWORK_DXE_CIS_H_
22 #define _FRAMEWORK_DXE_CIS_H_
23
24 #include <PiDxe.h>
25 #include <Protocol/StatusCode.h>
26
27 typedef struct {
28 EFI_TABLE_HEADER Hdr;
29
30 //
31 // Time services
32 //
33 EFI_GET_TIME GetTime;
34 EFI_SET_TIME SetTime;
35 EFI_GET_WAKEUP_TIME GetWakeupTime;
36 EFI_SET_WAKEUP_TIME SetWakeupTime;
37
38 //
39 // Virtual memory services
40 //
41 EFI_SET_VIRTUAL_ADDRESS_MAP SetVirtualAddressMap;
42 EFI_CONVERT_POINTER ConvertPointer;
43
44 //
45 // Variable services
46 //
47 EFI_GET_VARIABLE GetVariable;
48 EFI_GET_NEXT_VARIABLE_NAME GetNextVariableName;
49 EFI_SET_VARIABLE SetVariable;
50
51 //
52 // Misc
53 //
54 EFI_GET_NEXT_HIGH_MONO_COUNT GetNextHighMonotonicCount;
55 EFI_RESET_SYSTEM ResetSystem;
56
57 //
58 // Framework extension to EFI 1.10 runtime table
59 // It was moved to a protocol to not conflict with UEFI 2.0
60 //
61 EFI_REPORT_STATUS_CODE ReportStatusCode;
62 } FRAMEWORK_EFI_RUNTIME_SERVICES;
63
64 #define EFI_EVENT_RUNTIME_CONTEXT 0x20000000
65 #define EFI_EVENT_NOTIFY_SIGNAL_ALL 0x00000400
66 #define EFI_EVENT_SIGNAL_READY_TO_BOOT 0x00000203
67 #define EFI_EVENT_SIGNAL_LEGACY_BOOT 0x00000204
68
69
70 typedef struct {
71 EFI_DEVICE_PATH_PROTOCOL Header;
72 EFI_GUID TianoSpecificDevicePath;
73 UINT32 Type;
74 } TIANO_DEVICE_PATH;
75
76 #define TIANO_MEDIA_FW_VOL_FILEPATH_DEVICE_PATH_TYPE 0x01
77 typedef struct {
78 TIANO_DEVICE_PATH Tiano;
79 EFI_GUID NameGuid;
80 } FRAMEWORK_MEDIA_FW_VOL_FILEPATH_DEVICE_PATH;
81
82
83 //
84 // Function prototype for invoking a function on an Application Processor
85 // Used by both the SMM infrastructure and the MP Services Protocol
86 //
87 typedef
88 VOID
89 (EFIAPI *EFI_AP_PROCEDURE) (
90 IN VOID *Buffer
91 );
92
93 #endif