Reviewed-by: Jian J Wang <jian.j.w...@intel.com>


> -----Original Message-----
> From: Chen, Chen A
> Sent: Tuesday, January 29, 2019 3:44 PM
> To: edk2-devel@lists.01.org
> Cc: Chen, Chen A <chen.a.c...@intel.com>; Wang, Jian J
> <jian.j.w...@intel.com>; Wu, Hao A <hao.a...@intel.com>; Zhang, Chao B
> <chao.b.zh...@intel.com>
> Subject: [PATCH v3 2/4] MdeModulePkg/CapsuleApp: Add a function used to get
> next DevicePath
> 
> BZ:https://bugzilla.tianocore.org/show_bug.cgi?id=1482
> 
> Add a new function to support Capsule-on-Disk feature.
> This function is used to get next full DevicePath from a load option.
> 
> Cc: Jian J Wang <jian.j.w...@intel.com>
> Cc: Hao Wu <hao.a...@intel.com>
> Cc: Zhang Chao B <chao.b.zh...@intel.com>
> Contributed-under: TianoCore Contribution Agreement 1.1
> Signed-off-by: Chen A Chen <chen.a.c...@intel.com>
> ---
>  MdeModulePkg/Include/Library/UefiBootManagerLib.h | 21
> +++++++++++++++++++-
>  MdeModulePkg/Library/UefiBootManagerLib/BmBoot.c  | 24
> ++++++++++++++++++++++-
>  2 files changed, 43 insertions(+), 2 deletions(-)
> 
> diff --git a/MdeModulePkg/Include/Library/UefiBootManagerLib.h
> b/MdeModulePkg/Include/Library/UefiBootManagerLib.h
> index bfc0cb86f8..64347ff160 100644
> --- a/MdeModulePkg/Include/Library/UefiBootManagerLib.h
> +++ b/MdeModulePkg/Include/Library/UefiBootManagerLib.h
> @@ -1,7 +1,7 @@
>  /** @file
>    Provide Boot Manager related library APIs.
> 
> -Copyright (c) 2011 - 2018, Intel Corporation. All rights reserved.<BR>
> +Copyright (c) 2011 - 2019, Intel Corporation. All rights reserved.<BR>
>  (C) Copyright 2015-2016 Hewlett Packard Enterprise Development LP<BR>
>  This program and the accompanying materials
>  are licensed and made available under the terms and conditions of the BSD
> License
> @@ -445,6 +445,25 @@ EfiBootManagerGetBootManagerMenu (
>    EFI_BOOT_MANAGER_LOAD_OPTION *BootOption
>    );
> 
> +/**
> +  Get the next possible full path pointing to the load option.
> +  The routine doesn't guarantee the returned full path points to an existing
> +  file, and it also doesn't guarantee the existing file is a valid load 
> option.
> +  BmGetNextLoadOptionBuffer() guarantees.
> +
> +  @param FilePath  The device path pointing to a load option.
> +                   It could be a short-form device path.
> +  @param FullPath  The full path returned by the routine in last call.
> +                   Set to NULL in first call.
> +
> +  @return The next possible full path pointing to the load option.
> +          Caller is responsible to free the memory.
> +**/
> +EFI_DEVICE_PATH_PROTOCOL *
> +EfiBootManagerGetNextFullDevicePath (
> +  IN  EFI_DEVICE_PATH_PROTOCOL          *FilePath,
> +  IN  EFI_DEVICE_PATH_PROTOCOL          *FullPath
> +  );
> 
>  /**
>    Get the load option by its device path.
> diff --git a/MdeModulePkg/Library/UefiBootManagerLib/BmBoot.c
> b/MdeModulePkg/Library/UefiBootManagerLib/BmBoot.c
> index 6a23477eb8..684d7b8b1b 100644
> --- a/MdeModulePkg/Library/UefiBootManagerLib/BmBoot.c
> +++ b/MdeModulePkg/Library/UefiBootManagerLib/BmBoot.c
> @@ -1,7 +1,7 @@
>  /** @file
>    Library functions which relates with booting.
> 
> -Copyright (c) 2011 - 2018, Intel Corporation. All rights reserved.<BR>
> +Copyright (c) 2011 - 2019, Intel Corporation. All rights reserved.<BR>
>  (C) Copyright 2015-2016 Hewlett Packard Enterprise Development LP<BR>
>  This program and the accompanying materials
>  are licensed and made available under the terms and conditions of the BSD
> License
> @@ -2461,3 +2461,25 @@ EfiBootManagerGetBootManagerMenu (
>    }
>  }
> 
> +/**
> +  Get the next possible full path pointing to the load option.
> +  The routine doesn't guarantee the returned full path points to an existing
> +  file, and it also doesn't guarantee the existing file is a valid load 
> option.
> +  BmGetNextLoadOptionBuffer() guarantees.
> +
> +  @param FilePath  The device path pointing to a load option.
> +                   It could be a short-form device path.
> +  @param FullPath  The full path returned by the routine in last call.
> +                   Set to NULL in first call.
> +
> +  @return The next possible full path pointing to the load option.
> +          Caller is responsible to free the memory.
> +**/
> +EFI_DEVICE_PATH_PROTOCOL *
> +EfiBootManagerGetNextFullDevicePath (
> +  IN  EFI_DEVICE_PATH_PROTOCOL          *FilePath,
> +  IN  EFI_DEVICE_PATH_PROTOCOL          *FullPath
> +  )
> +{
> +  return BmGetNextLoadOptionDevicePath(FilePath, FullPath);
> +}
> --
> 2.16.2.windows.1

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to