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