APs to help test system memory in parallel with other device initialization.\r
Diagnostics applications may also use this protocol for multi-processor.\r
\r
- Copyright (c) 2006 - 2009, Intel Corporation.<BR>\r
- All rights reserved. This program and the accompanying materials\r
- are licensed and made available under the terms and conditions of the BSD License\r
- which accompanies this distribution. The full text of the license may be found at<BR>\r
- http://opensource.org/licenses/bsd-license.php\r
-\r
- THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
- WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.<BR>\r
+This program and the accompanying materials are licensed and made available under \r
+the terms and conditions of the BSD License that accompanies this distribution. \r
+The full text of the license may be found at\r
+http://opensource.org/licenses/bsd-license.php. \r
+ \r
+THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r
+WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
\r
@par Revision Reference:\r
This Protocol is defined in the UEFI Platform Initialization Specification 1.2, \r
#define _MP_SERVICE_PROTOCOL_H_\r
\r
///\r
-/// Global ID for the EFI_MP_SERVICES_PROTOCOL\r
+/// Global ID for the EFI_MP_SERVICES_PROTOCOL.\r
///\r
#define EFI_MP_SERVICES_PROTOCOL_GUID \\r
{ \\r
}\r
\r
///\r
-/// Forward declaration for the EFI_MP_SERVICES_PROTOCOL\r
+/// Forward declaration for the EFI_MP_SERVICES_PROTOCOL.\r
///\r
typedef struct _EFI_MP_SERVICES_PROTOCOL EFI_MP_SERVICES_PROTOCOL;\r
\r
/// 1 0 0 Invalid. The BSP can never be in the disabled state.\r
/// 1 0 1 Invalid. The BSP can never be in the disabled state.\r
/// 1 1 0 Unhealthy Enabled BSP.\r
- /// 1 1 1 Healthy Enabled BSP\r
+ /// 1 1 1 Healthy Enabled BSP.\r
/// </pre>\r
///\r
UINT32 StatusFlag;\r
///\r
/// The physical location of the processor, including the physical package number\r
/// that identifies the cartridge, the physical core number within package, and \r
- /// logical threadnumber within core.\r
+ /// logical thread number within core.\r
///\r
EFI_CPU_PHYSICAL_LOCATION Location;\r
} EFI_PROCESSOR_INFORMATION;\r
\r
-/**\r
- Functions of this type are passed into StartUpAllAPs() and StartThisAP() to\r
- execute a procedure on enabled APs. The context the AP should use durng \r
- execution is specified by ProcedureArgument.\r
- \r
- @param[in] ProcedureArgument Pointer to the procedure's argument.\r
-\r
-**/\r
-typedef\r
-VOID\r
-(EFIAPI *EFI_AP_PROCEDURE)(\r
- IN VOID *ProcedureArgument\r
- );\r
-\r
/**\r
This service retrieves the number of logical processor in the platform\r
and the number of those logical processors that are enabled on this boot.\r
This service may only be called from the BSP.\r
\r
This function is used to retrieve the following information:\r
- - The number of logical processors that are present in the system\r
+ - The number of logical processors that are present in the system.\r
- The number of enabled logical processors in the system at the instant \r
this call is made.\r
\r
- Since MP Service Protocol provides services to enable and disable processors \r
+ Because MP Service Protocol provides services to enable and disable processors \r
dynamically, the number of enabled logical processors may vary during the \r
course of a boot session.\r
\r
@retval EFI_SUCCESS The number of logical processors and enabled \r
logical processors was retrieved.\r
@retval EFI_DEVICE_ERROR The calling processor is an AP.\r
- @retval EFI_INVALID_PARAMETER NumberOfProcessors is NULL\r
- @retval EFI_INVALID_PARAMETER NumberOfEnabledProcessors is NULL\r
+ @retval EFI_INVALID_PARAMETER NumberOfProcessors is NULL.\r
+ @retval EFI_INVALID_PARAMETER NumberOfEnabledProcessors is NULL.\r
\r
**/\r
typedef\r
BSP requests the function specified by \r
Procedure to be started on all the enabled \r
APs, and go on executing immediately. If \r
- all return from Procedure or TimeoutInMicroSeconds\r
+ all return from Procedure, or TimeoutInMicroSeconds\r
expires, this event is signaled. The BSP \r
can use the CheckEvent() or WaitForEvent() \r
services to check the state of event. Type \r
bits are ignored. If it is NULL, this parameter \r
is ignored.\r
\r
- @retval EFI_SUCCESS The specified AP successfully enabled or disabled.\r
+ @retval EFI_SUCCESS The specified AP was enabled or disabled successfully.\r
@retval EFI_UNSUPPORTED Enabling or disabling an AP cannot be completed \r
prior to this service returning.\r
@retval EFI_UNSUPPORTED Enabling or disabling an AP is not supported.\r
\r
@retval EFI_SUCCESS The current processor handle number was returned \r
in ProcessorNumber.\r
- @retval EFI_INVALID_PARAMETER ProcessorNumber is NULL\r
+ @retval EFI_INVALID_PARAMETER ProcessorNumber is NULL.\r
\r
**/\r
typedef\r
/// guarantee that all non-blocking mode requests on all APs have been completed \r
/// before the UEFI event EFI_EVENT_GROUP_READY_TO_BOOT is signaled. Since the \r
/// order that event notification functions in the same event group are executed \r
-/// is not deterministic, an event of type EFI_EVENT_GROUP_READY_TO_BOOT can not \r
+/// is not deterministic, an event of type EFI_EVENT_GROUP_READY_TO_BOOT cannot \r
/// be used to guarantee that APs have completed their non-blocking mode requests.\r
///\r
/// When the UEFI event EFI_EVENT_GROUP_READY_TO_BOOT is signaled, the StartAllAPs() \r