REF:https://bugzilla.tianocore.org/show_bug.cgi?id=3218 Adds a new function called GetCpuMaxLogicalProcessorNumber() to return the number of maximum CPU logical processors (currently gUefiCpuPkgTokenSpaceGuid.PcdCpuMaxLogicalProcessorNumber). This allows the the mechanism used to retrieve the CPU maximum logical processor number to be abstracted from the logic that needs the value. Cc: Eric Dong <eric.dong@intel.com> Cc: Ray Ni <ray.ni@intel.com> Cc: Laszlo Ersek <lersek@redhat.com> Cc: Rahul Kumar <rahul1.kumar@intel.com> Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com> Message-Id: <20210217213227.1277-5-mikuback@linux.microsoft.com> Reviewed-by: Eric Dong <eric.dong@intel.com>
		
			
				
	
	
		
			49 lines
		
	
	
		
			1008 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			49 lines
		
	
	
		
			1008 B
		
	
	
	
		
			C
		
	
	
	
	
	
/** @file
 | 
						|
  Internal library function definitions.
 | 
						|
 | 
						|
  Copyright (c) Microsoft Corporation.
 | 
						|
  SPDX-License-Identifier: BSD-2-Clause-Patent
 | 
						|
 | 
						|
**/
 | 
						|
 | 
						|
#ifndef CPU_FEATURES_LIB_H_
 | 
						|
#define CPU_FEATURES_LIB_H_
 | 
						|
 | 
						|
/**
 | 
						|
  Performs library initialization.
 | 
						|
 | 
						|
  This initialization function contains common functionality shared betwen all
 | 
						|
  library instance constructors.
 | 
						|
 | 
						|
**/
 | 
						|
VOID
 | 
						|
CpuFeaturesLibInitialization (
 | 
						|
  VOID
 | 
						|
  );
 | 
						|
 | 
						|
/**
 | 
						|
  Internal worker function that is called to complete CPU initialization at the
 | 
						|
  end of SmmCpuFeaturesInitializeProcessor().
 | 
						|
 | 
						|
**/
 | 
						|
VOID
 | 
						|
FinishSmmCpuFeaturesInitializeProcessor (
 | 
						|
  VOID
 | 
						|
  );
 | 
						|
 | 
						|
/**
 | 
						|
  Gets the maximum number of logical processors from the PCD PcdCpuMaxLogicalProcessorNumber.
 | 
						|
 | 
						|
  This access is abstracted from the PCD services to enforce that the PCD be
 | 
						|
  FixedAtBuild in the Standalone MM build of this driver.
 | 
						|
 | 
						|
  @return  The value of PcdCpuMaxLogicalProcessorNumber.
 | 
						|
 | 
						|
**/
 | 
						|
UINT32
 | 
						|
GetCpuMaxLogicalProcessorNumber (
 | 
						|
  VOID
 | 
						|
  );
 | 
						|
 | 
						|
#endif
 |