From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail03.groups.io (mail03.groups.io [45.79.227.220]) by spool.mail.gandi.net (Postfix) with ESMTPS id 08FD7D801DE for ; Fri, 12 Apr 2024 03:24:47 +0000 (UTC) DKIM-Signature: a=rsa-sha256; bh=1uv+O7latJFNqJyMzB7PwcvDZITtLYEH+3mnTOn4flo=; c=relaxed/simple; d=groups.io; h=From:To:CC:Subject:Thread-Topic:Thread-Index:Date:Message-ID:References:In-Reply-To:Accept-Language:MIME-Version:Precedence:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Resent-Date:Resent-From:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Language:Content-Type:Content-Transfer-Encoding; s=20240206; t=1712892286; v=1; b=o0KFmZh8qLBKQ8kVH49ARrEauD5YoKHeA2R4wnG81V6b8j/wKUcOq5XiR2GdR+nsys+eyGU7 YAXurj1FqjpANiD20uodyQ0TmIJk3i8fUuIsLtP+DtkrlFYlGyVhdZTT1fqXI6EHeHoPLIw1cNm Hn5Zgn1XBHpUnnOP+AJWoqSWApyPL3dXxCMoYqxoSltxeEpOQLCq0AtdzPtSPexXdrIOW2JoD84 v08+NjSTmUh5q/CFfdTzHIOrnXeFg2XKcs0Trn7fmvAQHT+2P2F2tR1VI/gmDBujrqo0yvaANUd zm3ug+iDXCJL0d87y8dzyZ5vz4Nmc+bUAbf+8MVhCyFCQ== X-Received: by 127.0.0.2 with SMTP id GUzaYY7687511xt6kSfCBcRF; Thu, 11 Apr 2024 20:24:46 -0700 X-Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.8]) by mx.groups.io with SMTP id smtpd.web10.38647.1712892285948647780 for ; Thu, 11 Apr 2024 20:24:46 -0700 X-CSE-ConnectionGUID: TkGb0uDNS7CqH1t3vNaJ1g== X-CSE-MsgGUID: 1tolgKj3SquMO8iNYX8ChQ== X-IronPort-AV: E=McAfee;i="6600,9927,11041"; a="25848112" X-IronPort-AV: E=Sophos;i="6.07,194,1708416000"; d="scan'208";a="25848112" X-Received: from orviesa003.jf.intel.com ([10.64.159.143]) by fmvoesa102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 11 Apr 2024 20:24:46 -0700 X-CSE-ConnectionGUID: ZDVzOE4KRFuIX8cgX5Q1zg== X-CSE-MsgGUID: kL7MNwiuRXKMIPaJP2Nuiw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.07,194,1708416000"; d="scan'208";a="25772752" X-Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82]) by orviesa003.jf.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 11 Apr 2024 20:24:46 -0700 X-Received: from fmsmsx611.amr.corp.intel.com (10.18.126.91) by fmsmsx602.amr.corp.intel.com (10.18.126.82) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35; Thu, 11 Apr 2024 20:24:45 -0700 X-Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx611.amr.corp.intel.com (10.18.126.91) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35; Thu, 11 Apr 2024 20:24:44 -0700 X-Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) by fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35 via Frontend Transport; Thu, 11 Apr 2024 20:24:44 -0700 X-Received: from NAM10-MW2-obe.outbound.protection.outlook.com (104.47.55.100) by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.35; Thu, 11 Apr 2024 20:24:43 -0700 X-Received: from SJ0PR11MB5008.namprd11.prod.outlook.com (2603:10b6:a03:2d5::17) by BL3PR11MB6338.namprd11.prod.outlook.com (2603:10b6:208:3b2::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7472.26; Fri, 12 Apr 2024 03:24:41 +0000 X-Received: from SJ0PR11MB5008.namprd11.prod.outlook.com ([fe80::ad44:5b92:34f4:3063]) by SJ0PR11MB5008.namprd11.prod.outlook.com ([fe80::ad44:5b92:34f4:3063%4]) with mapi id 15.20.7472.025; Fri, 12 Apr 2024 03:24:41 +0000 From: "Tina Chen" To: "Yao, Jiewen" , "Bi, Dandan" , "Kuo, CindyX" , "devel@edk2.groups.io" CC: "Kumar, Rahul R" , "Tan, Ming" , "Chen, Arthur G" , "Chen, Xiao X" Subject: Re: [edk2-devel] [PATCH v3] SecurityPkg/OpalPasswordDxe: Update UI according to UEFI spec Thread-Topic: [PATCH v3] SecurityPkg/OpalPasswordDxe: Update UI according to UEFI spec Thread-Index: AQHai73puQUM58A4EUyRrOZtLemw97Fi64AAgABLcYCAAL2R8A== Date: Fri, 12 Apr 2024 03:24:41 +0000 Message-ID: References: <46e2b8943750c127746125f0265b91ab91a0a859.1712804652.git.cindyx.kuo@intel.com> In-Reply-To: Accept-Language: en-US, zh-TW X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: SJ0PR11MB5008:EE_|BL3PR11MB6338:EE_ x-ms-office365-filtering-correlation-id: 61ccada0-5e9d-492e-550f-08dc5aa0176a x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam-message-info: HxmBcNTyustasCvi3AhMJ0qx0GsrTdFK4x/U1dSoCvo+wspnEUZSpPwKjBs6YnabILOznbkJqucEXwvAGJAxD8YZu7RPf916onMPQqlBDLCaHc1kpYf5qO+i5U1WqsMUyNARN1bzR1qjm52CdbZ0catGewtJ7qzYGcmD3om9dWVOnusl4Xq4Hf5qkAwdHwq9vRZOgoHA5066DNEHAhbcXy9SPGTWQvg1TadriF4+c4DZAD87xteJq1WV7ONaBnBEljnNP1jgmqb/lm3V+3Pj3/HXMobO/e1ttmp2rW61NmLF8kZjnKuy1HRfxcRUxFxC/nDYNlN/5DzD6JYo+QwW2lVkc1Zn8lmyupkLdhuevGBwx4aa/jHXaOwqGPHqiyXVXUvzSe7c4zVgSobvoHkJoMCWXVvwP4zAkHuJG/eyAuRErJEzEdGjEuK5qvkyAF3Ubg+R0wt6zA1Z7OnEA2EcSGe5uDWC6r5Pw/aXO+fgg1mAZKYb2gbzelKwErFDRt6mQ7Al3nkVU759s2R3Ja51QX90EXdZOm3WWoKcPuxJPGgqM4mxrozcuXDyEamTNDADA5zFJrs0SOW7XxQiJRLuhkpKPL+VHU82jtWnXluK5nlMHrqwlAyjQ1jBzKUrSa/SIJ38Q2+tZn1IexeKO3uvnM3UPjNH2EtIPCJ+R2lod+8= x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?MoDrGO6ln86GCbpURkRmVDtG0vuXE+03PE85gIK/tMZwD1lkX11n1SYnyCj2?= =?us-ascii?Q?k7YbhIgiR9K48giXQNaN1DVmYYm62sLzMNNEuLon0xJMjqNTjiqfcTz+KE+A?= =?us-ascii?Q?nqU4BJJfyMspf+IeZHV3pCriybGrSwptxHFfWm/g7kB1P74CxeOgds27AmrN?= =?us-ascii?Q?ZSdff0EuOUMZBwbmIGCxrJ2GI2b3EaCEJAICscyyrqf60LMm0odsWfqNTTkq?= =?us-ascii?Q?1tjdz2CPjA26rk875V4L1KfoEJuXA8j0vNJoizB3T3mM7H+b1l4Nn64PbXDm?= =?us-ascii?Q?YWPbLwB/xFiPMoxFk2TYLDepBLfOXyPcvSjx+tqTwahkmPX5Fswt8nMARDrf?= =?us-ascii?Q?eJkPyqTRzs/Sn4go4z4r2sxhEZLGuv7hiLmc8Pdip3xy6hIYSc/S64QA33md?= =?us-ascii?Q?5q35RnSxSrfwqczOa2z2EooTnG68hwZ1z5xxtJK53eVyu5/muERFSC7vAGbV?= =?us-ascii?Q?yKt/eJGyhK/A+VPVuSgR+LZNUqf2uUA7V1Tx5evvVWrCtChldV1lqxCpAiwZ?= =?us-ascii?Q?iyN9i0Ec34s223KI04LbNt78Hy/nBoEBi5IHEXmTWseQYN5m+0WHRheCAFON?= =?us-ascii?Q?MzaQ6Bc8xnjIkj9mDzo9/pVPk1SZb2gp0Cft+186AqReYX7HwQ5gEonYDfn8?= =?us-ascii?Q?K55xh12TB56PlVXHTizfUe56kOZunurcybZthZfzARJ6I6w6KpUMROBhC3ng?= =?us-ascii?Q?pklp884qDCU9A9W26wFNGcXBAkvskxAtsRMDhkL+fcX/bDwpFKsFDBn1ePHs?= =?us-ascii?Q?ximScgNiFtUS1quFfuF42e9WnVQBXXeVzp4uSQyxSOcKE10c2CfXbCz9ppF7?= =?us-ascii?Q?v94GQkWkBP3fhWosicQk0ORuiYYxkMv4zN1NLgxgz9URvgksaETJy+5eAiTG?= =?us-ascii?Q?cFu9ad++KrLUAWEpUr21Z2k4br7KJJBDH9PT0zmhEGB/L9+Fc3wSm9HWlQgH?= =?us-ascii?Q?h2P+Yq3eKO7caGdIHJqfc5GINkzSfPxM9bFULNvDv45MoLzQqGeQg0C5Lc7T?= =?us-ascii?Q?l10cx2z9NmwOgWrSv+FBVPr4Qbdv5iM/A1+p57jB6LAP8M60b0w766RDZd+E?= =?us-ascii?Q?tEkyhjiTrAWbYzXbMCHMReq0vHWxiEuCN0qnQpDkK+UX1r1q3W3YZT9TyvC+?= =?us-ascii?Q?RYevtIg4CLUEjSPuGq9mhz53JIwPrAh15cnsVLsPiq8s0apiem1oeXjrsjeF?= =?us-ascii?Q?sjilUgOBqX0hNxHQ7oMTG5ZDV0k+H/ljk+qlr5cCWPSddUbixPynmB/LP+kR?= =?us-ascii?Q?heRRPm2Uq5HoCbzjpmM45yeyo8Hew9YWrAcLleAtAbDawSem3R0eGrEP/l1B?= =?us-ascii?Q?uA0Ngo1RHskkzmPgivqkOoiqcQMsQXHZh4A0fRgyuX1R1FyOCo08AUYYr1ie?= =?us-ascii?Q?dN3pXDa44Ti71zFGzcXYFsgVbXKQn3zkShcu55u02n0iXy0qEOnnMwyDpgt4?= =?us-ascii?Q?t1nWK0uCPRXSligQs4/R3btEFtQcsBbxTehLl1BMOhGNMzgkcWHwG/gk67/k?= =?us-ascii?Q?yfLGj149e4Id2zEkfmvqWLWyd828CnVcWB8T5zAbdaZTLII8brbFGk7BzyuN?= =?us-ascii?Q?4uIIM3vY7eSVKXKp5hTDIUnVWPk981SMpnehJ/JK?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: SJ0PR11MB5008.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 61ccada0-5e9d-492e-550f-08dc5aa0176a X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Apr 2024 03:24:41.3588 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: FP8rsWvlTamSnD6AjjkMNBx0UAoOwlbXRS9Cta9VmaWIDLdBTReru3btlBRV/SotN28lWb6dab4dVFgs/izbgQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL3PR11MB6338 X-OriginatorOrg: intel.com Precedence: Bulk List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Resent-Date: Thu, 11 Apr 2024 20:24:46 -0700 Resent-From: tina.chen@intel.com Reply-To: devel@edk2.groups.io,tina.chen@intel.com List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: X-Gm-Message-State: 3Q9q1LZhUBthY3KKeXFJirGAx7686176AA= Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable X-GND-Status: LEGIT Authentication-Results: spool.mail.gandi.net; dkim=pass header.d=groups.io header.s=20240206 header.b=o0KFmZh8; spf=pass (spool.mail.gandi.net: domain of bounce@groups.io designates 45.79.227.220 as permitted sender) smtp.mailfrom=bounce@groups.io; dmarc=fail reason="SPF not aligned (relaxed), DKIM not aligned (relaxed)" header.from=intel.com (policy=none) Hi JieWen, For opalHii current design, it will display all NVME disks when the user en= ters TCG Drive Management dynamically. Also, the related disk info form will be created along with the disks. These actions will call get/set browser to refresh the display. To meet UEFI 2.9 spec, a latency issue will be observed if the browser acti= on changes from ACTION_FORM_OPEN to ACTION_RETRIEVE due to the current Hii = browser design flow. The NVNE disks will not be able to display when the user enters the formset= . (Revisit the formset can see the update.) After discussing with Dandan, came up with a solution to force reparsing th= e IFR binary when RETRIEVE. That's why it needs to have additional changes besides changing the execute= action only. Thanks. Sincerely, Tina -----Original Message----- From: Yao, Jiewen =20 Sent: Thursday, April 11, 2024 23:45 To: Bi, Dandan ; Kuo, CindyX ; d= evel@edk2.groups.io Cc: Kumar, Rahul R ; Tan, Ming ; Chen, Arthur G ; Chen, Xiao X ; Chen, Tina Subject: RE: [PATCH v3] SecurityPkg/OpalPasswordDxe: Update UI according to= UEFI spec Hi It seems this patch adds more change than just "update UI according to UEFI= spec". Please help me understand why we need below 2 and 3. Are you required for U= EFI spec update? > 2. Create dummy label with suppressif statement in VFR for form update us= age. > 3. Add HiiUpdateForm() to force reparsing the IFR binary. Thank you Yao, Jiewen > -----Original Message----- > From: Bi, Dandan > Sent: Thursday, April 11, 2024 7:15 PM > To: Kuo, CindyX ; devel@edk2.groups.io > Cc: Yao, Jiewen ; Kumar, Rahul R=20 > ; Tan, Ming ; Chen,=20 > Arthur G ; Chen, Xiao X=20 > ; Chen, Tina > Subject: RE: [PATCH v3] SecurityPkg/OpalPasswordDxe: Update UI=20 > according to UEFI spec >=20 > Reviewed-by: Dandan Bi >=20 >=20 > Thanks, > Dandan > -----Original Message----- > From: Kuo, CindyX > Sent: Thursday, April 11, 2024 11:11 AM > To: devel@edk2.groups.io > Cc: Kuo, CindyX ; Yao, Jiewen=20 > ; Kumar, Rahul R ; Bi,=20 > Dandan ; Tan, Ming ; Chen,=20 > Arthur G ; Chen, Xiao X=20 > ; Chen, Tina > Subject: [PATCH v3] SecurityPkg/OpalPasswordDxe: Update UI according=20 > to UEFI spec >=20 > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3D4735 >=20 > Should not call HiiGetBrowserData() and HiiSetBrowserData() in=20 > FORM_OPEN call back function. > Those APIs are called within=20 > OpalHiiSetBrowserData/OpalHiiGetBrowserData > which have been used by OpalHii.c. >=20 > 1. Change callback action from FORM_OPEN to RETRIEVE. > 2. Create dummy label with suppressif statement in VFR for form update us= age. > 3. Add HiiUpdateForm() to force reparsing the IFR binary. >=20 > Cc: Jiewen Yao > Cc: Rahul Kumar > Cc: Dandan Bi > Cc: Ming Tan > Cc: Arthur Chen > Cc: Xiao X Chen > Cc: Tina Chen > Signed-off-by: CindyX Kuo > --- > .../Tcg/Opal/OpalPassword/OpalDriver.h | 1 + > SecurityPkg/Tcg/Opal/OpalPassword/OpalHii.c | 84 ++++++++++++++++--- > .../Tcg/Opal/OpalPassword/OpalHiiFormValues.h | 6 > ++ .../Tcg/Opal/OpalPassword/OpalPasswordDxe.inf | 1 + > .../Opal/OpalPassword/OpalPasswordForm.vfr | 8 +- > 5 files changed, 87 insertions(+), 13 deletions(-) >=20 > diff --git a/SecurityPkg/Tcg/Opal/OpalPassword/OpalDriver.h > b/SecurityPkg/Tcg/Opal/OpalPassword/OpalDriver.h > index 2089bd81b6..1a4671c602 100644 > --- a/SecurityPkg/Tcg/Opal/OpalPassword/OpalDriver.h > +++ b/SecurityPkg/Tcg/Opal/OpalPassword/OpalDriver.h > @@ -23,6 +23,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent >=20 > #include > #include > +#include >=20 > #include > #include > diff --git a/SecurityPkg/Tcg/Opal/OpalPassword/OpalHii.c > b/SecurityPkg/Tcg/Opal/OpalPassword/OpalHii.c > index 8035f44ebe..47af4fee40 100644 > --- a/SecurityPkg/Tcg/Opal/OpalPassword/OpalHii.c > +++ b/SecurityPkg/Tcg/Opal/OpalPassword/OpalHii.c > @@ -40,6 +40,7 @@ EFI_HII_HANDLE gHiiPackageListHandle =3D NULL; // > const EFI_GUID gHiiPackageListGuid =3D PACKAGE_LIST_GUID; > const EFI_GUID gHiiSetupVariableGuid =3D SETUP_VARIABLE_GUID; > +const EFI_GUID gOpalSetupFormSetGuid =3D SETUP_FORMSET_GUID; >=20 > // > // Structure that contains state of the HII @@ -611,10 +612,15 @@=20 > DriverCallback ( > EFI_BROWSER_ACTION_REQUEST *ActionRequest > ) > { > - HII_KEY HiiKey; > - UINT8 HiiKeyId; > - UINT32 PpRequest; > - OPAL_DISK *OpalDisk; > + HII_KEY HiiKey; > + UINT8 HiiKeyId; > + UINT32 PpRequest; > + OPAL_DISK *OpalDisk; > + EFI_STATUS Status; > + VOID *StartOpCodeHandle; > + VOID *EndOpCodeHandle; > + EFI_IFR_GUID_LABEL *StartLabel; > + EFI_IFR_GUID_LABEL *EndLabel; >=20 > if (ActionRequest !=3D NULL) { > *ActionRequest =3D EFI_BROWSER_ACTION_REQUEST_NONE; @@ -632,15 > +638,69 @@ DriverCallback ( > HiiKey.Raw =3D QuestionId; > HiiKeyId =3D (UINT8)HiiKey.KeyBits.Id; >=20 > - if (Action =3D=3D EFI_BROWSER_ACTION_FORM_OPEN) { > - switch (HiiKeyId) { > - case HII_KEY_ID_VAR_SUPPORTED_DISKS: > - DEBUG ((DEBUG_INFO, "HII_KEY_ID_VAR_SUPPORTED_DISKS\n")); > - return HiiPopulateMainMenuForm (); > + if (Action =3D=3D EFI_BROWSER_ACTION_RETRIEVE) { > + if ((HiiKeyId =3D=3D HII_KEY_ID_VAR_SUPPORTED_DISKS) || (HiiKeyId = =3D=3D > HII_KEY_ID_VAR_SELECTED_DISK_AVAILABLE_ACTIONS)) { > + // > + // Allocate space for creation of UpdateData Buffer > + // > + StartOpCodeHandle =3D HiiAllocateOpCodeHandle (); > + if (StartOpCodeHandle =3D=3D NULL) { > + return EFI_OUT_OF_RESOURCES; > + } > + > + EndOpCodeHandle =3D HiiAllocateOpCodeHandle (); > + if (EndOpCodeHandle =3D=3D NULL) { > + return EFI_OUT_OF_RESOURCES; > + } > + > + // > + // Create Hii Extend Label OpCode as the start opcode > + // > + StartLabel =3D (EFI_IFR_GUID_LABEL *)HiiCreateGuidOp= Code > (StartOpCodeHandle, &gEfiIfrTianoGuid, NULL, sizeof=20 > (EFI_IFR_GUID_LABEL)); > + StartLabel->ExtendOpCode =3D EFI_IFR_EXTEND_OP_LABEL; > + > + // > + // Create Hii Extend Label OpCode as the end opcode > + // > + EndLabel =3D (EFI_IFR_GUID_LABEL *)HiiCreateGuidOpCo= de > (EndOpCodeHandle, &gEfiIfrTianoGuid, NULL, sizeof=20 > (EFI_IFR_GUID_LABEL)); > + EndLabel->ExtendOpCode =3D EFI_IFR_EXTEND_OP_LABEL; > + > + switch (HiiKeyId) { > + case HII_KEY_ID_VAR_SUPPORTED_DISKS: > + DEBUG ((DEBUG_INFO, "HII_KEY_ID_VAR_SUPPORTED_DISKS\n")); > + Status =3D HiiPopulateMainMenuForm (); > + > + StartLabel->Number =3D OPAL_MAIN_MENU_LABEL_START; > + EndLabel->Number =3D OPAL_MAIN_MENU_LABEL_END; > + HiiUpdateForm ( > + gHiiPackageListHandle, > + (EFI_GUID *)&gOpalSetupFormSetGuid, > + FORMID_VALUE_MAIN_MENU, > + StartOpCodeHandle, > + EndOpCodeHandle > + ); > + break; > + > + case HII_KEY_ID_VAR_SELECTED_DISK_AVAILABLE_ACTIONS: > + DEBUG ((DEBUG_INFO, > "HII_KEY_ID_VAR_SELECTED_DISK_AVAILABLE_ACTIONS\n")); > + Status =3D HiiPopulateDiskInfoForm (); > + > + StartLabel->Number =3D OPAL_DISK_INFO_LABEL_START; > + EndLabel->Number =3D OPAL_DISK_INFO_LABEL_END; > + HiiUpdateForm ( > + gHiiPackageListHandle, > + (EFI_GUID *)&gOpalSetupFormSetGuid, > + FORMID_VALUE_DISK_INFO_FORM_MAIN, > + StartOpCodeHandle, > + EndOpCodeHandle > + ); > + break; > + } > + > + HiiFreeOpCodeHandle (StartOpCodeHandle); > + HiiFreeOpCodeHandle (EndOpCodeHandle); >=20 > - case HII_KEY_ID_VAR_SELECTED_DISK_AVAILABLE_ACTIONS: > - DEBUG ((DEBUG_INFO, > "HII_KEY_ID_VAR_SELECTED_DISK_AVAILABLE_ACTIONS\n")); > - return HiiPopulateDiskInfoForm (); > + return Status; > } > } else if (Action =3D=3D EFI_BROWSER_ACTION_CHANGING) { > switch (HiiKeyId) { > diff --git a/SecurityPkg/Tcg/Opal/OpalPassword/OpalHiiFormValues.h > b/SecurityPkg/Tcg/Opal/OpalPassword/OpalHiiFormValues.h > index ab6957fc6f..0e098854ba 100644 > --- a/SecurityPkg/Tcg/Opal/OpalPassword/OpalHiiFormValues.h > +++ b/SecurityPkg/Tcg/Opal/OpalPassword/OpalHiiFormValues.h > @@ -96,6 +96,12 @@ typedef struct { >=20 > #define HII_KEY(id) HII_KEY_WITH_INDEX(id, 0) >=20 > +/* Label */ > +#define OPAL_MAIN_MENU_LABEL_START 0x6100 > +#define OPAL_MAIN_MENU_LABEL_END 0x6101 > +#define OPAL_DISK_INFO_LABEL_START 0x6200 > +#define OPAL_DISK_INFO_LABEL_END 0x6201 > + > #define PACKAGE_LIST_GUID { 0xf0308176, 0x9058, 0x4153, { 0x93,=20 > 0x3d, 0xda, 0x2f, 0xdc, 0xc8, 0x3e, 0x44 } } >=20 > /* {410483CF-F4F9-4ece-848A-1958FD31CEB7} */ diff --git=20 > a/SecurityPkg/Tcg/Opal/OpalPassword/OpalPasswordDxe.inf > b/SecurityPkg/Tcg/Opal/OpalPassword/OpalPasswordDxe.inf > index 87519198c0..89e72a74bc 100644 > --- a/SecurityPkg/Tcg/Opal/OpalPassword/OpalPasswordDxe.inf > +++ b/SecurityPkg/Tcg/Opal/OpalPassword/OpalPasswordDxe.inf > @@ -69,6 +69,7 @@ > [Guids] > gEfiEndOfDxeEventGroupGuid ## CONSUMES ## Event > gS3StorageDeviceInitListGuid ## SOMETIMES_PRODUCES ## > UNDEFINED > + gEfiIfrTianoGuid ## CONSUMES >=20 > [Pcd] > gEfiSecurityPkgTokenSpaceGuid.PcdSkipOpalPasswordPrompt ##=20 > CONSUMES diff --git=20 > a/SecurityPkg/Tcg/Opal/OpalPassword/OpalPasswordForm.vfr > b/SecurityPkg/Tcg/Opal/OpalPassword/OpalPasswordForm.vfr > index f0d3e220b2..a1049686ff 100644 > --- a/SecurityPkg/Tcg/Opal/OpalPassword/OpalPasswordForm.vfr > +++ b/SecurityPkg/Tcg/Opal/OpalPassword/OpalPasswordForm.vfr > @@ -25,8 +25,11 @@ formset > form formid =3D FORMID_VALUE_MAIN_MENU, > title =3D STRING_TOKEN(STR_OPAL); >=20 > - //CONFIG_VARIABLE(HII_KEY(HII_KEY_ID_VAR_SUPPORTED_DISKS), > SupportedDisks, 0x0, 0xFFFF); > suppressif TRUE; > + label OPAL_MAIN_MENU_LABEL_START; > + label OPAL_MAIN_MENU_LABEL_END; > + > + //CONFIG_VARIABLE(HII_KEY(HII_KEY_ID_VAR_SUPPORTED_DISKS), > + SupportedDisks, 0x0, 0xFFFF); > numeric > name =3D SupportedDisks, > varid =3D OpalHiiConfig.SupportedDisks, > @@ -149,6 +152,9 @@ form formid =3D > FORMID_VALUE_DISK_INFO_FORM_MAIN, > title =3D STRING_TOKEN(STR_OPAL); >=20 > suppressif TRUE; > + label OPAL_DISK_INFO_LABEL_START; > + label OPAL_DISK_INFO_LABEL_END; > + > numeric > name =3D SelectedDiskAvailableActions, > varid =3D OpalHiiConfig.SelectedDiskAvailableActions, > -- > 2.44.0.windows.1 --=20 Tina Chen -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#117639): https://edk2.groups.io/g/devel/message/117639 Mute This Topic: https://groups.io/mt/105456188/7686176 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-