]> git.proxmox.com Git - mirror_edk2.git/blame - Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Include/Protocol/PchReset.h
Vlv2DeviceRefCodePkg: Replace BSD License with BSD+Patent License
[mirror_edk2.git] / Vlv2DeviceRefCodePkg / ValleyView2Soc / SouthCluster / Include / Protocol / PchReset.h
CommitLineData
3cbfba02
DW
1/**\r
2**/\r
3/**\r
4\r
5Copyright (c) 2011 - 2014, Intel Corporation. All rights reserved\r
6\r
7ede8060 7 SPDX-License-Identifier: BSD-2-Clause-Patent\r
3cbfba02
DW
8\r
9\r
10\r
11 @file\r
12 PchReset.h\r
13\r
14 @brief\r
15 PCH Reset Protocol\r
16\r
17**/\r
18#ifndef _PCH_RESET_H_\r
19#define _PCH_RESET_H_\r
20\r
21\r
22//\r
23#define PCH_RESET_PROTOCOL_GUID \\r
24 { \\r
25 0xdb63592c, 0xb8cc, 0x44c8, 0x91, 0x8c, 0x51, 0xf5, 0x34, 0x59, 0x8a, 0x5a \\r
26 }\r
27#define PCH_RESET_CALLBACK_PROTOCOL_GUID \\r
28 { \\r
29 0x3a3300ab, 0xc929, 0x487d, 0xab, 0x34, 0x15, 0x9b, 0xc1, 0x35, 0x62, 0xc0 \\r
30 }\r
31extern EFI_GUID gPchResetProtocolGuid;\r
32extern EFI_GUID gPchResetCallbackProtocolGuid;\r
33\r
34///\r
35/// Forward reference for ANSI C compatibility\r
36///\r
37typedef struct _PCH_RESET_PROTOCOL PCH_RESET_PROTOCOL;\r
38\r
39typedef struct _PCH_RESET_CALLBACK_PROTOCOL PCH_RESET_CALLBACK_PROTOCOL;\r
40\r
41///\r
42/// Related Definitions\r
43///\r
44///\r
45/// PCH Reset Types\r
46///\r
47typedef enum {\r
48 ColdReset,\r
49 WarmReset,\r
50 ShutdownReset,\r
51 PowerCycleReset,\r
52 GlobalReset,\r
53 GlobalResetWithEc\r
54} PCH_RESET_TYPE;\r
55\r
56///\r
57/// Member functions\r
58///\r
59typedef\r
60EFI_STATUS\r
61(EFIAPI *PCH_RESET) (\r
62 IN PCH_RESET_PROTOCOL * This,\r
63 IN PCH_RESET_TYPE PchResetType\r
64 )\r
65/**\r
66\r
67 @brief\r
68 Execute Pch Reset from the host controller.\r
69\r
70 @param[in] This Pointer to the PCH_RESET_PROTOCOL instance.\r
71 @param[in] PchResetType Pch Reset Types which includes ColdReset, WarmReset, ShutdownReset,\r
72 PowerCycleReset, GlobalReset, GlobalResetWithEc\r
73\r
74 @retval EFI_SUCCESS Successfully completed.\r
75 @retval EFI_INVALID_PARAMETER If ResetType is invalid.\r
76\r
77**/\r
78;\r
79\r
80typedef\r
81EFI_STATUS\r
82(EFIAPI *PCH_RESET_CALLBACK) (\r
83 IN PCH_RESET_TYPE PchResetType\r
84 )\r
85/**\r
86\r
87 @brief\r
88 Execute call back function for Pch Reset.\r
89\r
90 @param[in] PchResetType Pch Reset Types which includes PowerCycle, Globalreset.\r
91\r
92 @retval EFI_SUCCESS The callback function has been done successfully\r
93 @retval EFI_NOT_FOUND Failed to find Pch Reset Callback protocol. Or, none of\r
94 callback protocol is installed.\r
95 @retval Others Do not do any reset from PCH\r
96\r
97**/\r
98;\r
99\r
100///\r
101/// Interface structure for the Pch Reset Protocol\r
102///\r
103struct _PCH_RESET_PROTOCOL {\r
104 PCH_RESET Reset;\r
105};\r
106\r
107///\r
108/// PCH_RESET_CALLBACK_PROTOCOL Structure Definition\r
109///\r
110struct _PCH_RESET_CALLBACK_PROTOCOL {\r
111 PCH_RESET_CALLBACK ResetCallback;\r
112};\r
113\r
114#endif\r