https://svn.code.sf.net/p/edk2/code/trunk/edk2/, which are for MinnowBoard MAX open source project. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: David Wei <david.wei@intel.com> Reviewed-by: Mike Wu <mike.wu@intel.com> Reviewed-by: Hot Tian <hot.tian@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16599 6f19259b-4bc3-4df7-8a09-765794883524
		
			
				
	
	
		
			95 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			95 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /*++
 | |
| 
 | |
| Copyright (c)  1999  - 2014, Intel Corporation. All rights reserved
 | |
| 
 | |
|   This program and the accompanying materials are licensed and made available under
 | |
|   the terms and conditions of the BSD License that accompanies this distribution.
 | |
|   The full text of the license may be found at
 | |
|   http://opensource.org/licenses/bsd-license.php.
 | |
| 
 | |
|   THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
 | |
|   WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 | |
| 
 | |
| 
 | |
| 
 | |
| Module Name:
 | |
| 
 | |
|   TcoReset.h
 | |
| 
 | |
| Abstract:
 | |
| 
 | |
|   Protocol to communicate with ICH TCO.
 | |
| 
 | |
| GUID Info:
 | |
|  {A6A79162-E325-4c30-BCC3-59373064EFB3}
 | |
|  0xa6a79162, 0xe325, 0x4c30, 0xbc, 0xc3, 0x59, 0x37, 0x30, 0x64, 0xef, 0xb3);
 | |
| 
 | |
| 
 | |
| --*/
 | |
| 
 | |
| #ifndef _TCO_RESET_H_
 | |
| #define _TCO_RESET_H_
 | |
| 
 | |
| 
 | |
| #define EFI_TCO_RESET_PROTOCOL_GUID  \
 | |
|   {0xa6a79162, 0xe325, 0x4c30, 0xbc, 0xc3, 0x59, 0x37, 0x30, 0x64, 0xef, 0xb3}
 | |
| 
 | |
| typedef struct _EFI_TCO_RESET_PROTOCOL EFI_TCO_RESET_PROTOCOL;
 | |
| 
 | |
| typedef
 | |
| EFI_STATUS
 | |
| (EFIAPI *EFI_TCO_RESET_PROTOCOL_ENABLE_TCO_RESET) (
 | |
|   IN      UINT32            *RcrbGcsSaveValue
 | |
|   )
 | |
| /*++
 | |
| 
 | |
| Routine Description:
 | |
| 
 | |
|   Enables the TCO timer to reset the system in case of a system hang.  This is
 | |
|   used when writing the clock registers.
 | |
| 
 | |
| Arguments:
 | |
| 
 | |
|   RcrbGcsSaveValue  - This is the value of the RCRB GCS register before it is
 | |
|                       changed by this procedure.  This will be used to restore
 | |
|                       the settings of this register in PpiDisableTcoReset.
 | |
| 
 | |
| Returns:
 | |
| 
 | |
|   EFI_STATUS
 | |
| 
 | |
| --*/
 | |
| ;
 | |
| 
 | |
| typedef
 | |
| EFI_STATUS
 | |
| (EFIAPI *EFI_TCO_RESET_PROTOCOL_DISABLE_TCO_RESET) (
 | |
|   OUT     UINT32    RcrbGcsRestoreValue
 | |
|   )
 | |
| /*++
 | |
| 
 | |
| Routine Description:
 | |
| 
 | |
|   Disables the TCO timer.  This is used after writing the clock registers.
 | |
| 
 | |
| Arguments:
 | |
| 
 | |
|   RcrbGcsRestoreValue - Value saved in PpiEnableTcoReset so that it can
 | |
|                         restored.
 | |
| 
 | |
| Returns:
 | |
| 
 | |
|   EFI_STATUS
 | |
| 
 | |
| --*/
 | |
| ;
 | |
| 
 | |
| typedef struct _EFI_TCO_RESET_PROTOCOL {
 | |
|   EFI_TCO_RESET_PROTOCOL_ENABLE_TCO_RESET       EnableTcoReset;
 | |
|   EFI_TCO_RESET_PROTOCOL_DISABLE_TCO_RESET      DisableTcoReset;
 | |
| } EFI_TCO_RESET_PROTOCOL;
 | |
| 
 | |
| extern EFI_GUID gEfiTcoResetProtocolGuid;
 | |
| 
 | |
| #endif
 |