Walon:
  This change looks good.  Reviewed-by: Liming Gao
<gaolim...@byosoft.com.cn>

Thanks
Liming
> -----邮件原件-----
> 发件人: Li, Walon <walon...@hpe.com>
> 发送时间: 2022年7月18日 9:15
> 收件人: devel@edk2.groups.io; gaolim...@byosoft.com.cn
> 抄送: Wang, Nickle (Server BIOS) <nickle.w...@hpe.com>; Li, Walon
> <walon...@hpe.com>
> 主题: RE: [PATCH] MdeModulePkg/SetupBrowserDxe:Follow spec'd way to
> reconnect driver
> 
> Hi edk2 and Liming,
> 
> Who can help to review this change? Thanks.
> 
> -----Original Message-----
> From: Li, Walon <walon...@hpe.com>
> Sent: Friday, June 24, 2022 2:08 PM
> To: devel@edk2.groups.io
> Cc: Li, Walon <walon...@hpe.com>; Wang, Nickle (Server BIOS)
> <nickle.w...@hpe.com>; gaolim...@byosoft.com.cn
> Subject: [PATCH] MdeModulePkg/SetupBrowserDxe:Follow spec'd way to
> reconnect driver
> 
> REF:https://bugzilla.tianocore.org/show_bug.cgi?id=3952
> 
> In UEFI spec, it defines reconnect timing that will be activated upon
exiting of
> the formset or the browser. However, we did't use this kind of way to
check
> reconnect conditioncode. Code only blocks reconnect if page is updated
> dynamically. That's not matched spec'd way. We should check current
formset
> whether is exiting, then reconnect driver.
> 
> Signed-off-by: Walon Li <walon...@hpe.com>
> ---
>  MdeModulePkg/Universal/SetupBrowserDxe/Presentation.c | 4 +---
>  MdeModulePkg/Universal/SetupBrowserDxe/Setup.c        | 9 +++------
>  2 files changed, 4 insertions(+), 9 deletions(-)
> 
> diff --git a/MdeModulePkg/Universal/SetupBrowserDxe/Presentation.c
> b/MdeModulePkg/Universal/SetupBrowserDxe/Presentation.c
> index 9587b08d6d..babef21497 100644
> --- a/MdeModulePkg/Universal/SetupBrowserDxe/Presentation.c
> +++ b/MdeModulePkg/Universal/SetupBrowserDxe/Presentation.c
> @@ -2,7 +2,7 @@
>  Utility functions for UI presentation.  Copyright (c) 2004 - 2018, Intel
> Corporation. All rights reserved.<BR>-(C) Copyright 2015 Hewlett Packard
> Enterprise Development LP<BR>+(C) Copyright 2015 - 2022 Hewlett Packard
> Enterprise Development LP<BR> SPDX-License-Identifier:
> BSD-2-Clause-Patent  **/@@ -21,7 +21,6 @@ LIST_ENTRY
> mRefreshEventList  = INITIALIZE_LIST_HEAD_VARIABLE (mR
>  UINT16                    mCurFakeQestId;
> FORM_DISPLAY_ENGINE_FORM  gDisplayFormData; BOOLEAN
> mFinishRetrieveCall = FALSE;-BOOLEAN
> mDynamicFormUpdated = FALSE;  /**   Check whether the ConfigAccess
> protocol is available.@@ -1791,7 +1790,6 @@ FormUpdateNotify (
>    ) {   mHiiPackageListUpdated = TRUE;-  mDynamicFormUpdated    =
> TRUE;    return EFI_SUCCESS; }diff --git
> a/MdeModulePkg/Universal/SetupBrowserDxe/Setup.c
> b/MdeModulePkg/Universal/SetupBrowserDxe/Setup.c
> index fe0d46d93f..5158baf5bd 100644
> --- a/MdeModulePkg/Universal/SetupBrowserDxe/Setup.c
> +++ b/MdeModulePkg/Universal/SetupBrowserDxe/Setup.c
> @@ -2,7 +2,7 @@
>  Entry and initialization module for the browser.  Copyright (c) 2007 -
2018,
> Intel Corporation. All rights reserved.<BR>-(C) Copyright 2020 Hewlett
> Packard Enterprise Development LP<BR>+(C) Copyright 2020 - 2022 Hewlett
> Packard Enterprise Development LP<BR> SPDX-License-Identifier:
> BSD-2-Clause-Patent  **/@@ -68,7 +68,6 @@ extern EFI_GUID
> mCurrentFormSetGuid;
>  extern EFI_HII_HANDLE            mCurrentHiiHandle; extern UINT16
> mCurrentFormId; extern FORM_DISPLAY_ENGINE_FORM
> gDisplayFormData;-extern BOOLEAN
> mDynamicFormUpdated;  /**   Create a menu with specified formset
> GUID and form ID, and add it as a child@@ -539,7 +538,6 @@ SendForm (
>         Selection->FormSet  = FormSet;       mSystemLevelFormSet =
> FormSet;-      mDynamicFormUpdated = FALSE;        //       //
> Display this formset@@ -552,10 +550,9 @@ SendForm (
>        mSystemLevelFormSet = NULL;        //-      // If callback
> update form dynamically, it's not exiting of the formset for user so
system do
> not reconnect driver hanlde-      // this time.+      // Check incoming
> formset whether is same with previous. If yes, that means action is not
exiting
> of formset so do not reconnect controller.       //-      if
> (!mDynamicFormUpdated && (gFlagReconnect || gCallbackReconnect)) {+
> if ((gFlagReconnect || gCallbackReconnect) && !CompareGuid
> (&FormSet->Guid, &Selection->FormSetGuid)) {         RetVal =
> ReconnectController (FormSet->DriverHandle);         if (!RetVal)
> {           PopupErrorMessage (BROWSER_RECONNECT_FAIL, NULL,
> NULL, NULL);--
> 2.23.0.windows.1





-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#91511): https://edk2.groups.io/g/devel/message/91511
Mute This Topic: https://groups.io/mt/92474394/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-


Reply via email to