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
 |