hc
2024-03-25 edb30157bad0c0001c32b854271ace01d3b9a16a
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
/* $NoKeywords */
/**
 * @file
 *
 * CoreState.h
 *
 * CPU Core State Structures and Definitions.
 *
 * @xrefitem bom "File Content Label" "Release Content"
 * @e project: FDK
 * @e sub-project: UEFI
 * @e version: $Revision: 334098 $ @e date: $Date: 2016-01-08 14:21:15 -0600 (Fri, 08 Jan 2016) $
 *
 */
/*****************************************************************************
*
*  Copyright 2013 - 2016 ADVANCED MICRO DEVICES, INC.  All Rights Reserved.
*
*  This program and the accompanying materials are licensed and made available
*  under the terms and conditions of the BSD License which 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.
*
***************************************************************************/
//#########################################################################
//#########################################################################
//#########################################################################
//        NOTE: This file shared between SCP and UEFI, make sure all     //
//              changes are reflected in both copies.                    //
//#########################################################################
//#########################################################################
//#########################################################################
 
#ifndef CORESTATUS_H_
#define CORESTATUS_H_
 
 
/*----------------------------------------------------------------------------------------
 *                  T Y P E D E F S     A N D     S T R U C T U  R E S
 *----------------------------------------------------------------------------------------
 */
 
/// Core State Enumeration
typedef enum {
  CPU_CORE_UNDEFINED = 0,         ///< Core is undefined
  CPU_CORE_DISABLED,              ///< Core is disabled
  CPU_CORE_POWERUP,               ///< Core/cluster is powered up
  CPU_CORE_POWERDOWN,             ///< Core/cluster is powered down
  CPU_CORE_RESET,                 ///< Core is powered but in reset
  CPU_CORE_RUN,                   ///< Core is running
  CPU_CORE_SLEEP,                 ///< Core is powered and sleeping (TBD)
} CPU_CORE_STATE;
 
/// SOC Core Status Structure
typedef struct {
  UINT32            ClusterId;    ///< CPU Cluster ID
  UINT32            CoreId;       ///< CPU Core ID
  CPU_CORE_STATE    Status;       ///< Core State Enumeration
  UINT64            ResetVector;  ///< CPU Core Reset Vector
} SocCoreStatus;
 
#endif /* CORESTATUS_H_ */