Correct a typo: Change the type of the 4th parameter of EFI_DRIVER_HEALTH_PROTOCOL::Repair() from EFI_DRIVER_HEALTH_REPAIR_PROGRESS_NOTIFY to EFI_DRIVER_HEALTH_REPAIR_NOTIFY to follow the UEFI spec.

Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>

git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14767 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
Ruiyu Ni 2013-10-14 02:02:02 +00:00 committed by niruiyu
parent f66a43b26e
commit 59ec2b00f9
3 changed files with 40 additions and 46 deletions

View File

@ -1,7 +1,7 @@
/** @file /** @file
The platform device manager reference implementation The platform device manager reference implementation
Copyright (c) 2004 - 2012, Intel Corporation. All rights reserved.<BR> Copyright (c) 2004 - 2013, Intel Corporation. All rights reserved.<BR>
This program and the accompanying materials This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License 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 which accompanies this distribution. The full text of the license may be found at
@ -1943,7 +1943,7 @@ ProcessSingleControllerHealth (
DriverHealth, DriverHealth,
ControllerHandle, ControllerHandle,
ChildHandle, ChildHandle,
(EFI_DRIVER_HEALTH_REPAIR_PROGRESS_NOTIFY) RepairNotify RepairNotify
); );
} }
// //
@ -2019,24 +2019,20 @@ ProcessSingleControllerHealth (
/** /**
Platform specific notification function for controller repair operations. Reports the progress of a repair operation.
If the driver for a controller support the Driver Health Protocol and the @param[in] Value A value between 0 and Limit that identifies the current
current state of the controller is EfiDriverHealthStatusRepairRequired then progress of the repair operation.
when the Repair() service of the Driver Health Protocol is called, this
platform specific notification function can display the progress of the repair
operation. Some platforms may choose to not display anything, other may choose
to show the percentage complete on text consoles, and other may choose to render
a progress bar on text and graphical consoles.
This function displays the percentage of the repair operation that has been @param[in] Limit The maximum value of Value for the current repair operation.
completed on text consoles. The percentage is Value / Limit * 100%. For example, a driver that wants to specify progress in
percent would use a Limit value of 100.
@param Value Value in the range 0..Limit the the repair has completed.. @retval EFI_SUCCESS The progress of a repair operation is reported successfully.
@param Limit The maximum value of Value
**/ **/
VOID EFI_STATUS
EFIAPI
RepairNotify ( RepairNotify (
IN UINTN Value, IN UINTN Value,
IN UINTN Limit IN UINTN Limit
@ -2050,6 +2046,7 @@ RepairNotify (
Percent = Value * 100 / Limit; Percent = Value * 100 / Limit;
Print(L"Repair Progress = %3d%%\n\r", Percent); Print(L"Repair Progress = %3d%%\n\r", Percent);
} }
return EFI_SUCCESS;
} }
/** /**

View File

@ -1,7 +1,7 @@
/** @file /** @file
The platform device manager reference implement The platform device manager reference implement
Copyright (c) 2004 - 2011, Intel Corporation. All rights reserved.<BR> Copyright (c) 2004 - 2013, Intel Corporation. All rights reserved.<BR>
This program and the accompanying materials This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License 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 which accompanies this distribution. The full text of the license may be found at
@ -313,13 +313,20 @@ ProcessSingleControllerHealth (
); );
/** /**
Repair notification function, simply print the repair progress. Reports the progress of a repair operation.
@param Value The value of part has been repaired. @param[in] Value A value between 0 and Limit that identifies the current
@param Limit Total value need to be repaired. progress of the repair operation.
@param[in] Limit The maximum value of Value for the current repair operation.
For example, a driver that wants to specify progress in
percent would use a Limit value of 100.
@retval EFI_SUCCESS The progress of a repair operation is reported successfully.
**/ **/
VOID EFI_STATUS
EFIAPI
RepairNotify ( RepairNotify (
IN UINTN Value, IN UINTN Value,
IN UINTN Limit IN UINTN Limit

View File

@ -20,7 +20,7 @@
may then need to be reconnected or the system may need to be rebooted for the may then need to be reconnected or the system may need to be rebooted for the
configuration changes to take affect. configuration changes to take affect.
Copyright (c) 2009 - 2011, Intel Corporation. All rights reserved.<BR> Copyright (c) 2009 - 2013, Intel Corporation. All rights reserved.<BR>
This program and the accompanying materials This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License 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 which accompanies this distribution. The full text of the license may be found at
@ -74,20 +74,10 @@ typedef struct {
@param[in] Limit The maximum value of Value for the current repair operation. @param[in] Limit The maximum value of Value for the current repair operation.
For example, a driver that wants to specify progress in For example, a driver that wants to specify progress in
percent would use a Limit value of 100. percent would use a Limit value of 100.
@retval EFI_SUCCESS An attempt to repair the controller specified by
ControllerHandle and ChildHandle was performed. The
result of the repair operation can bet determined by
calling GetHealthStatus().
@retval EFI_UNSUPPORTED The driver specified by This is not currently managing the
controller specified by ControllerHandle and
ChildHandle.
@retval EFI_OUT_OF_RESOURCES There are not enough resources to perform the repair operation.
**/ **/
typedef typedef
EFI_STATUS EFI_STATUS
(EFIAPI *EFI_DRIVER_HEALTH_REPAIR_PROGRESS_NOTIFY)( (EFIAPI *EFI_DRIVER_HEALTH_REPAIR_NOTIFY)(
IN UINTN Value, IN UINTN Value,
IN UINTN Limit IN UINTN Limit
); );
@ -201,7 +191,7 @@ EFI_STATUS
drivers when an attempt is made to repair a bus controller. drivers when an attempt is made to repair a bus controller.
If will not be NULL when an attempt is made to repair a If will not be NULL when an attempt is made to repair a
child controller produced by the driver. child controller produced by the driver.
@param[in] ProgressNotification A notification function that may be used by a driver to @param[in] RepairNotify A notification function that may be used by a driver to
report the progress of the repair operation. This is report the progress of the repair operation. This is
an optional parameter that may be NULL. an optional parameter that may be NULL.
@ -223,7 +213,7 @@ EFI_STATUS
IN EFI_DRIVER_HEALTH_PROTOCOL *This, IN EFI_DRIVER_HEALTH_PROTOCOL *This,
IN EFI_HANDLE ControllerHandle, IN EFI_HANDLE ControllerHandle,
IN EFI_HANDLE ChildHandle OPTIONAL, IN EFI_HANDLE ChildHandle OPTIONAL,
IN EFI_DRIVER_HEALTH_REPAIR_PROGRESS_NOTIFY ProgressNotification OPTIONAL IN EFI_DRIVER_HEALTH_REPAIR_NOTIFY RepairNotify OPTIONAL
); );
/// ///