2 Header file for QNC S3 Support driver
4 This file includes package header files, library classes and protocol, PPI & GUID definitions.
6 Copyright (c) 2013-2015 Intel Corporation.
8 This program and the accompanying materials
9 are licensed and made available under the terms and conditions of the BSD License
10 which accompanies this distribution. The full text of the license may be found at
11 http://opensource.org/licenses/bsd-license.php
13 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
14 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
17 #ifndef _QNC_S3_SUPPORT_H_
18 #define _QNC_S3_SUPPORT_H_
21 // External include files do NOT need to be explicitly specified in real EDKII
25 // Driver Consumed Protocol Prototypes
27 #include <Protocol/FirmwareVolume2.h>
28 #include <Library/UefiLib.h>
29 #include <Library/IoLib.h>
30 #include <Library/DebugLib.h>
31 #include <Library/DxeServicesLib.h>
32 #include <Library/S3BootScriptLib.h>
33 #include <Library/BaseMemoryLib.h>
34 #include <Library/PeCoffLib.h>
35 #include <Library/LockBoxLib.h>
36 #include <Library/UefiDriverEntryPoint.h>
37 #include <Library/UefiBootServicesTableLib.h>
38 #include <Library/UefiRuntimeServicesTableLib.h>
40 // Driver Produced Protocol Prototypes
42 #include <Protocol/LoadedImage.h>
43 #include <Protocol/QncS3Support.h>
45 #include <Library/CacheMaintenanceLib.h>
46 #include <Library/IntelQNCLib.h>
48 // Define the header of the context region.
53 EFI_DISPATCH_CONTEXT_UNION Contexts
[1];
54 } QNC_S3_PARAMETER_HEADER
;
56 // Function prototypes
60 QncS3SetDispatchItem (
61 IN EFI_QNC_S3_SUPPORT_PROTOCOL
*This
,
62 IN EFI_QNC_S3_DISPATCH_ITEM
*DispatchItem
,
63 OUT VOID
**S3DispatchEntryPoint
,
70 Set an item to be dispatched at S3 resume time. At the same time, the entry point
71 of the QNC S3 support image is returned to be used in subsequent boot script save
76 This - Pointer to the protocol instance.
77 DispatchItem - The item to be dispatched.
78 S3DispatchEntryPoint - The entry point of the QNC S3 support image.
82 EFI_STATUS - Successfully completed.
83 EFI_OUT_OF_RESOURCES - Out of resources.
90 IN EFI_SYSTEM_TABLE
*SystemTable
96 Load the QNC S3 Image into Efi Reserved Memory below 4G.
100 ImageEntryPoint the ImageEntryPoint after success loading
110 QncS3InitPcieRootPortDownstream (
111 IN EFI_HANDLE ImageHandle
,