]> git.proxmox.com Git - mirror_edk2.git/blob - Vlv2DeviceRefCodePkg/ValleyView2Soc/SouthCluster/Include/Protocol/PchExtendedReset.h
Vlv2DeviceRefCodePkg: Replace BSD License with BSD+Patent License
[mirror_edk2.git] / Vlv2DeviceRefCodePkg / ValleyView2Soc / SouthCluster / Include / Protocol / PchExtendedReset.h
1 /*++
2
3 Copyright (c) 2008 - 2014, Intel Corporation. All rights reserved
4
5 SPDX-License-Identifier: BSD-2-Clause-Patent
6
7
8
9 Module Name:
10
11 PchExtendedReset.h
12
13 Abstract:
14
15 PCH Extended Reset Protocol
16
17 --*/
18 #ifndef _EFI_PCH_EXTENDED_RESET_H_
19 #define _EFI_PCH_EXTENDED_RESET_H_
20
21
22
23 //
24 #define EFI_PCH_EXTENDED_RESET_PROTOCOL_GUID \
25 { \
26 0xf0bbfca0, 0x684e, 0x48b3, 0xba, 0xe2, 0x6c, 0x84, 0xb8, 0x9e, 0x53, 0x39 \
27 }
28 extern EFI_GUID gEfiPchExtendedResetProtocolGuid;
29
30 //
31 // Forward reference for ANSI C compatibility
32 //
33 typedef struct _EFI_PCH_EXTENDED_RESET_PROTOCOL EFI_PCH_EXTENDED_RESET_PROTOCOL;
34
35 //
36 // Related Definitions
37 //
38 //
39 // PCH Extended Reset Types
40 //
41 typedef struct {
42 UINT8 PowerCycle : 1; // 0: Disabled*; 1: Enabled
43 UINT8 GlobalReset : 1; // 0: Disabled*; 1: Enabled
44 UINT8 SusPwrDnAck : 1; // 0: Do Nothing;
45 // 1: GPIO[30](SUS_PWR_DN_ACK) level is set low prior to Global Reset(for systems with an embedded controller)
46 UINT8 RsvdBits : 5; // Reserved fields for future expansion w/o protocol change
47 } PCH_EXTENDED_RESET_TYPES;
48
49 //
50 // Member functions
51 //
52 typedef
53 EFI_STATUS
54 (EFIAPI *EFI_PCH_EXTENDED_RESET) (
55 IN EFI_PCH_EXTENDED_RESET_PROTOCOL * This,
56 IN PCH_EXTENDED_RESET_TYPES PchExtendedResetTypes
57 );
58
59 /*++
60
61 Routine Description:
62
63 Execute Pch Extended Reset from the host controller.
64
65 Arguments:
66
67 This - Pointer to the EFI_PCH_EXTENDED_RESET_PROTOCOL instance.
68 PchExtendedResetTypes - Pch Extended Reset Types which includes PowerCycle, Globalreset.
69
70 Returns:
71
72 Does not return if the reset takes place.
73 EFI_INVALID_PARAMETER - If ResetType is invalid.
74
75 --*/
76
77 //
78 // Interface structure for the Pch Extended Reset Protocol
79 //
80 struct _EFI_PCH_EXTENDED_RESET_PROTOCOL {
81 EFI_PCH_EXTENDED_RESET Reset;
82 };
83
84 #endif