[edk2-devel] [PATCH v1 2/3] UserAuthFeaturePkg: Included DXE versions are mutually exclusive

2022-07-25 Thread Benjamin Doron
Versions of the DXE module perform nearly identical functions, and are
therefore mutually exclusive. Including both modules results in at least
a duplicate HII package and an "already started" assert.

Therefore, add a new PCD to determine which module will be included.
However, now a second bug can be seen: version 2 does not challenge for
the password. An RSC handler to hook UiApp entry is probably needed, as
in version 1.

Cc: Sai Chaganty 
Cc: Isaac Oram 
Cc: Nate DeSimone 
Cc: Ankit Sinha 
Cc: Liming Gao 
Cc: Dandan Bi 
Signed-off-by: Benjamin Doron 
---
 Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc| 
1 +
 Features/Intel/AdvancedFeaturePkg/Include/AdvancedFeaturesPcd.dsc   | 
1 +
 Features/Intel/UserInterface/UserAuthFeaturePkg/Include/PostMemory.fdf  | 
9 ++---
 Features/Intel/UserInterface/UserAuthFeaturePkg/Include/UserAuthFeature.dsc | 
3 +++
 Features/Intel/UserInterface/UserAuthFeaturePkg/UserAuthFeaturePkg.dec  | 
3 ++-
 5 files changed, 13 insertions(+), 4 deletions(-)

diff --git a/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc 
b/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc
index 908fe4d1f7a9..8924dadcaa18 100644
--- a/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc
+++ b/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc
@@ -79,6 +79,7 @@
   #
   gLogoFeaturePkgTokenSpaceGuid.PcdLogoFeatureEnable
|TRUE
   gUserAuthFeaturePkgTokenSpaceGuid.PcdUserAuthenticationFeatureEnable  
|TRUE
+  gUserAuthFeaturePkgTokenSpaceGuid.PcdUseVersion1  
|FALSE
   gVirtualKeyboardFeaturePkgTokenSpaceGuid.PcdVirtualKeyboardFeatureEnable  
|TRUE
 
 #
diff --git a/Features/Intel/AdvancedFeaturePkg/Include/AdvancedFeaturesPcd.dsc 
b/Features/Intel/AdvancedFeaturePkg/Include/AdvancedFeaturesPcd.dsc
index d59e3e61b9b9..5365f0a1b844 100644
--- a/Features/Intel/AdvancedFeaturePkg/Include/AdvancedFeaturesPcd.dsc
+++ b/Features/Intel/AdvancedFeaturePkg/Include/AdvancedFeaturesPcd.dsc
@@ -75,6 +75,7 @@
 
   gLogoFeaturePkgTokenSpaceGuid.PcdLogoFeatureEnable
|FALSE
   gUserAuthFeaturePkgTokenSpaceGuid.PcdUserAuthenticationFeatureEnable  
|FALSE
+  gUserAuthFeaturePkgTokenSpaceGuid.PcdUseVersion1  
|FALSE
   gVirtualKeyboardFeaturePkgTokenSpaceGuid.PcdVirtualKeyboardFeatureEnable  
|FALSE
 
 #
diff --git 
a/Features/Intel/UserInterface/UserAuthFeaturePkg/Include/PostMemory.fdf 
b/Features/Intel/UserInterface/UserAuthFeaturePkg/Include/PostMemory.fdf
index 030dcbe763d8..827deb08de7e 100644
--- a/Features/Intel/UserInterface/UserAuthFeaturePkg/Include/PostMemory.fdf
+++ b/Features/Intel/UserInterface/UserAuthFeaturePkg/Include/PostMemory.fdf
@@ -7,6 +7,9 @@
 #
 ##
 
-INF UserAuthFeaturePkg/UserAuthenticationDxeSmm/UserAuthenticationDxe.inf
-INF UserAuthFeaturePkg/UserAuthenticationDxeSmm/UserAuthentication2Dxe.inf
-INF UserAuthFeaturePkg/UserAuthenticationDxeSmm/UserAuthenticationSmm.inf
+!if gUserAuthFeaturePkgTokenSpaceGuid.PcdUseVersion1 == TRUE
+  INF UserAuthFeaturePkg/UserAuthenticationDxeSmm/UserAuthenticationDxe.inf
+!else
+  INF UserAuthFeaturePkg/UserAuthenticationDxeSmm/UserAuthentication2Dxe.inf
+!endif
+  INF UserAuthFeaturePkg/UserAuthenticationDxeSmm/UserAuthenticationSmm.inf
diff --git 
a/Features/Intel/UserInterface/UserAuthFeaturePkg/Include/UserAuthFeature.dsc 
b/Features/Intel/UserInterface/UserAuthFeaturePkg/Include/UserAuthFeature.dsc
index 2f39a5580caf..022678d5c852 100644
--- 
a/Features/Intel/UserInterface/UserAuthFeaturePkg/Include/UserAuthFeature.dsc
+++ 
b/Features/Intel/UserInterface/UserAuthFeaturePkg/Include/UserAuthFeature.dsc
@@ -72,6 +72,9 @@
   UserAuthFeaturePkg/Library/UserPasswordUiLib/UserPasswordUiLib.inf
 
   # Add components here that should be included in the package build.
+!if gUserAuthFeaturePkgTokenSpaceGuid.PcdUseVersion1 == TRUE
   UserAuthFeaturePkg/UserAuthenticationDxeSmm/UserAuthenticationDxe.inf
+!else
   UserAuthFeaturePkg/UserAuthenticationDxeSmm/UserAuthentication2Dxe.inf
+!endif
   UserAuthFeaturePkg/UserAuthenticationDxeSmm/UserAuthenticationSmm.inf
diff --git 
a/Features/Intel/UserInterface/UserAuthFeaturePkg/UserAuthFeaturePkg.dec 
b/Features/Intel/UserInterface/UserAuthFeaturePkg/UserAuthFeaturePkg.dec
index a9174edd5486..209a0ba6a6c7 100644
--- a/Features/Intel/UserInterface/UserAuthFeaturePkg/UserAuthFeaturePkg.dec
+++ b/Features/Intel/UserInterface/UserAuthFeaturePkg/UserAuthFeaturePkg.dec
@@ -38,8 +38,9 @@
   gUserAuthenticationGuid = { 0xee24a7f7, 0x606b, 0x4724, { 0xb3, 0xc9, 0xf5, 
0xae, 0x4a, 0x3b, 0x81, 0x65}}
 
 [PcdsFeatureFlag]
-  ## This PCD specifies whether StatusCode is reported via USB3 Serial port.
+  ## This PCD specifies whether user authentication feature is enabled.
   
gUserAuthFeaturePkgTokenSpaceGuid.PcdUserAuthenticationFeatureEnable|FALSE|BOOLEAN|0xA001
+  gUserAuthFeaturePkgTokenSpaceGuid.PcdUseVersion1|FALSE|BOOLEAN|0xA002
 
 [PcdsFixedAtB

Re: [edk2-devel] [PATCH v1 2/3] UserAuthFeaturePkg: Included DXE versions are mutually exclusive

2022-08-16 Thread Oram, Isaac W
I am not aware of any preference between the drivers.  Your plan makes sense to 
me.  I will defer to Sai or Chasel if they know more history and use.


Also, please make sure that "build -a IA32 -a X64 -p 
UserInterface\UserAuthFeaturePkg\UserAuthFeaturePkg.dsc" and "build -a IA32 -a 
X64 -p AdvancedFeaturePkg\AdvancedFeaturePkg.dsc" complete successfully.



Adding the following to UserAuthFeaturePkg.dsc seemed to work for me.



[Packages]

  UserAuthFeaturePkg/UserAuthFeaturePkg.dec



[PcdsFeatureFlag]

  gUserAuthFeaturePkgTokenSpaceGuid.PcdUseVersion1|FALSE



Regards,
Isaac


From: Benjamin Doron 
Sent: Tuesday, August 9, 2022 10:09 AM
To: Oram, Isaac W 
Cc: devel@edk2.groups.io; Chaganty, Rangasai V ; 
Desimone, Nathaniel L ; Sinha, Ankit 
; Gao, Liming ; Bi, Dandan 

Subject: Re: [PATCH v1 2/3] UserAuthFeaturePkg: Included DXE versions are 
mutually exclusive

Hi Isaac,

From memory, the primary difference between the versions of this module is that 
v2 uses helper libraries to perform some of the functions in 
UserAuthenticationDxePassword.c and the HII helpers in UserAuthenticationDxe.c. 
There are other differences, at least including the handler to challenge for 
the admin password that should be ported or implemented for v2, but I think 
only one DXE module version is necessary to be in the tree.

We can drop this commit and I can work on improving v2 and deprecating v1 - as 
was my plan, because v2 needs to challenge for the password - but not at the 
moment. Unless v1's implementation is preferred?

Sorry about the subject prefix. I see that patch 1/3 is in. I think I'll work 
on 2/3 later and 3/3 separately.

Best regards,
Benjamin


On Mon, 8 Aug 2022 at 18:51, Oram, Isaac W 
mailto:isaac.w.o...@intel.com>> wrote:
Benjamin,

Can you update the readme with descriptions of the modules and their 
functionality?
Can you comment the PcdUseVersion1 declaration in the DEC file?
If you can think of a more descriptive name than "version 1", that would be 
better.

Note that convention (maybe requirement) is to preface non-edk2 repo changes 
with the mailing list and repo info [edk2-devel][edk2-platforms] so that rules 
can filter more easily.  And multi-commit reviews should have a cover-letter 
enabled as well so you can provide an overview of the patch series.
Here is the command I use: git format-patch -M --thread origin/master 
--cover-letter --subject-prefix="edk2-devel][edk2-platforms][PATCH V1"

Regards,
Isaac

-Original Message-
From: Benjamin Doron 
mailto:benjamin.doro...@gmail.com>>
Sent: Monday, July 25, 2022 10:12 AM
To: devel@edk2.groups.io
Cc: Chaganty, Rangasai V 
mailto:rangasai.v.chaga...@intel.com>>; Oram, 
Isaac W mailto:isaac.w.o...@intel.com>>; Desimone, 
Nathaniel L 
mailto:nathaniel.l.desim...@intel.com>>; Sinha, 
Ankit mailto:ankit.si...@intel.com>>; Gao, Liming 
mailto:gaolim...@byosoft.com.cn>>; Bi, Dandan 
mailto:dandan...@intel.com>>
Subject: [PATCH v1 2/3] UserAuthFeaturePkg: Included DXE versions are mutually 
exclusive

Versions of the DXE module perform nearly identical functions, and are 
therefore mutually exclusive. Including both modules results in at least a 
duplicate HII package and an "already started" assert.

Therefore, add a new PCD to determine which module will be included.
However, now a second bug can be seen: version 2 does not challenge for the 
password. An RSC handler to hook UiApp entry is probably needed, as in version 
1.

Cc: Sai Chaganty 
mailto:rangasai.v.chaga...@intel.com>>
Cc: Isaac Oram mailto:isaac.w.o...@intel.com>>
Cc: Nate DeSimone 
mailto:nathaniel.l.desim...@intel.com>>
Cc: Ankit Sinha mailto:ankit.si...@intel.com>>
Cc: Liming Gao mailto:gaolim...@byosoft.com.cn>>
Cc: Dandan Bi mailto:dandan...@intel.com>>
Signed-off-by: Benjamin Doron 
mailto:benjamin.doro...@gmail.com>>
---
 Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc| 
1 +
 Features/Intel/AdvancedFeaturePkg/Include/AdvancedFeaturesPcd.dsc   | 
1 +
 Features/Intel/UserInterface/UserAuthFeaturePkg/Include/PostMemory.fdf  | 
9 ++---
 Features/Intel/UserInterface/UserAuthFeaturePkg/Include/UserAuthFeature.dsc | 
3 +++
 Features/Intel/UserInterface/UserAuthFeaturePkg/UserAuthFeaturePkg.dec  | 
3 ++-
 5 files changed, 13 insertions(+), 4 deletions(-)

diff --git a/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc 
b/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc
index 908fe4d1f7a9..8924dadcaa18 100644
--- a/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc
+++ b/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc
@@ -79,6 +79,7 @@
   #   gLogoFeaturePkgTokenSpaceGuid.PcdLogoFeatureEnable   
 |TRUE   gUserAuthFeaturePkgTokenSpaceGuid.PcdUserAuthenticationFeatureEnable   
   |TRUE+  gUserAuthFeaturePkgTokenSpaceGuid.PcdUseVersion1 
 |FALSE   
gVirtualKeyboardFeaturePkgTokenSpaceGuid.PcdVirtualKeyboard

Re: [edk2-devel] [PATCH v1 2/3] UserAuthFeaturePkg: Included DXE versions are mutually exclusive

2022-08-08 Thread Oram, Isaac W
Benjamin,

Can you update the readme with descriptions of the modules and their 
functionality?
Can you comment the PcdUseVersion1 declaration in the DEC file?
If you can think of a more descriptive name than "version 1", that would be 
better.

Note that convention (maybe requirement) is to preface non-edk2 repo changes 
with the mailing list and repo info [edk2-devel][edk2-platforms] so that rules 
can filter more easily.  And multi-commit reviews should have a cover-letter 
enabled as well so you can provide an overview of the patch series.
Here is the command I use: git format-patch -M --thread origin/master 
--cover-letter --subject-prefix="edk2-devel][edk2-platforms][PATCH V1"

Regards,
Isaac

-Original Message-
From: Benjamin Doron  
Sent: Monday, July 25, 2022 10:12 AM
To: devel@edk2.groups.io
Cc: Chaganty, Rangasai V ; Oram, Isaac W 
; Desimone, Nathaniel L 
; Sinha, Ankit ; Gao, 
Liming ; Bi, Dandan 
Subject: [PATCH v1 2/3] UserAuthFeaturePkg: Included DXE versions are mutually 
exclusive

Versions of the DXE module perform nearly identical functions, and are 
therefore mutually exclusive. Including both modules results in at least a 
duplicate HII package and an "already started" assert.

Therefore, add a new PCD to determine which module will be included.
However, now a second bug can be seen: version 2 does not challenge for the 
password. An RSC handler to hook UiApp entry is probably needed, as in version 
1.

Cc: Sai Chaganty 
Cc: Isaac Oram 
Cc: Nate DeSimone 
Cc: Ankit Sinha 
Cc: Liming Gao 
Cc: Dandan Bi 
Signed-off-by: Benjamin Doron 
---
 Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc| 
1 +
 Features/Intel/AdvancedFeaturePkg/Include/AdvancedFeaturesPcd.dsc   | 
1 +
 Features/Intel/UserInterface/UserAuthFeaturePkg/Include/PostMemory.fdf  | 
9 ++---
 Features/Intel/UserInterface/UserAuthFeaturePkg/Include/UserAuthFeature.dsc | 
3 +++
 Features/Intel/UserInterface/UserAuthFeaturePkg/UserAuthFeaturePkg.dec  | 
3 ++-
 5 files changed, 13 insertions(+), 4 deletions(-)

diff --git a/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc 
b/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc
index 908fe4d1f7a9..8924dadcaa18 100644
--- a/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc
+++ b/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc
@@ -79,6 +79,7 @@
   #   gLogoFeaturePkgTokenSpaceGuid.PcdLogoFeatureEnable   
 |TRUE   gUserAuthFeaturePkgTokenSpaceGuid.PcdUserAuthenticationFeatureEnable   
   |TRUE+  gUserAuthFeaturePkgTokenSpaceGuid.PcdUseVersion1 
 |FALSE   
gVirtualKeyboardFeaturePkgTokenSpaceGuid.PcdVirtualKeyboardFeatureEnable  |TRUE 
 #diff --git 
a/Features/Intel/AdvancedFeaturePkg/Include/AdvancedFeaturesPcd.dsc 
b/Features/Intel/AdvancedFeaturePkg/Include/AdvancedFeaturesPcd.dsc
index d59e3e61b9b9..5365f0a1b844 100644
--- a/Features/Intel/AdvancedFeaturePkg/Include/AdvancedFeaturesPcd.dsc
+++ b/Features/Intel/AdvancedFeaturePkg/Include/AdvancedFeaturesPcd.dsc
@@ -75,6 +75,7 @@
gLogoFeaturePkgTokenSpaceGuid.PcdLogoFeatureEnable
|FALSE   gUserAuthFeaturePkgTokenSpaceGuid.PcdUserAuthenticationFeatureEnable   
   |FALSE+  gUserAuthFeaturePkgTokenSpaceGuid.PcdUseVersion1
  |FALSE   
gVirtualKeyboardFeaturePkgTokenSpaceGuid.PcdVirtualKeyboardFeatureEnable  
|FALSE  #diff --git 
a/Features/Intel/UserInterface/UserAuthFeaturePkg/Include/PostMemory.fdf 
b/Features/Intel/UserInterface/UserAuthFeaturePkg/Include/PostMemory.fdf
index 030dcbe763d8..827deb08de7e 100644
--- a/Features/Intel/UserInterface/UserAuthFeaturePkg/Include/PostMemory.fdf
+++ b/Features/Intel/UserInterface/UserAuthFeaturePkg/Include/PostMemory
+++ .fdf
@@ -7,6 +7,9 @@
 # ## -INF 
UserAuthFeaturePkg/UserAuthenticationDxeSmm/UserAuthenticationDxe.inf-INF 
UserAuthFeaturePkg/UserAuthenticationDxeSmm/UserAuthentication2Dxe.inf-INF 
UserAuthFeaturePkg/UserAuthenticationDxeSmm/UserAuthenticationSmm.inf+!if 
gUserAuthFeaturePkgTokenSpaceGuid.PcdUseVersion1 == TRUE+  INF 
UserAuthFeaturePkg/UserAuthenticationDxeSmm/UserAuthenticationDxe.inf+!else+  
INF 
UserAuthFeaturePkg/UserAuthenticationDxeSmm/UserAuthentication2Dxe.inf+!endif+  
INF UserAuthFeaturePkg/UserAuthenticationDxeSmm/UserAuthenticationSmm.infdiff 
--git 
a/Features/Intel/UserInterface/UserAuthFeaturePkg/Include/UserAuthFeature.dsc 
b/Features/Intel/UserInterface/UserAuthFeaturePkg/Include/UserAuthFeature.dsc
index 2f39a5580caf..022678d5c852 100644
--- 
a/Features/Intel/UserInterface/UserAuthFeaturePkg/Include/UserAuthFeature.dsc
+++ b/Features/Intel/UserInterface/UserAuthFeaturePkg/Include/UserAuthFe
+++ ature.dsc
@@ -72,6 +72,9 @@
   UserAuthFeaturePkg/Library/UserPasswordUiLib/UserPasswordUiLib.inf# Add 
components here that should be included in the package build.+!if 
gUserAuthFeaturePkgTokenSpaceGuid.PcdUseVersion1 == TRUE   
UserAuthFeaturePkg/UserAuthenticationDxeSmm/UserAuthenti

Re: [edk2-devel] [PATCH v1 2/3] UserAuthFeaturePkg: Included DXE versions are mutually exclusive

2022-08-09 Thread Benjamin Doron
Hi Isaac,

>From memory, the primary difference between the versions of this module is
that v2 uses helper libraries to perform some of the functions in
UserAuthenticationDxePassword.c and the HII helpers in
UserAuthenticationDxe.c. There are other differences, at least including
the handler to challenge for the admin password that should be ported or
implemented for v2, but I think only one DXE module version is necessary to
be in the tree.

We can drop this commit and I can work on improving v2 and deprecating v1 -
as was my plan, because v2 needs to challenge for the password - but not at
the moment. Unless v1's implementation is preferred?

Sorry about the subject prefix. I see that patch 1/3 is in. I think I'll
work on 2/3 later and 3/3 separately.

Best regards,
Benjamin


On Mon, 8 Aug 2022 at 18:51, Oram, Isaac W  wrote:

> Benjamin,
>
> Can you update the readme with descriptions of the modules and their
> functionality?
> Can you comment the PcdUseVersion1 declaration in the DEC file?
> If you can think of a more descriptive name than "version 1", that would
> be better.
>
> Note that convention (maybe requirement) is to preface non-edk2 repo
> changes with the mailing list and repo info [edk2-devel][edk2-platforms] so
> that rules can filter more easily.  And multi-commit reviews should have a
> cover-letter enabled as well so you can provide an overview of the patch
> series.
> Here is the command I use: git format-patch -M --thread origin/master
> --cover-letter --subject-prefix="edk2-devel][edk2-platforms][PATCH V1"
>
> Regards,
> Isaac
>
> -Original Message-
> From: Benjamin Doron 
> Sent: Monday, July 25, 2022 10:12 AM
> To: devel@edk2.groups.io
> Cc: Chaganty, Rangasai V ; Oram, Isaac W <
> isaac.w.o...@intel.com>; Desimone, Nathaniel L <
> nathaniel.l.desim...@intel.com>; Sinha, Ankit ;
> Gao, Liming ; Bi, Dandan 
> Subject: [PATCH v1 2/3] UserAuthFeaturePkg: Included DXE versions are
> mutually exclusive
>
> Versions of the DXE module perform nearly identical functions, and are
> therefore mutually exclusive. Including both modules results in at least a
> duplicate HII package and an "already started" assert.
>
> Therefore, add a new PCD to determine which module will be included.
> However, now a second bug can be seen: version 2 does not challenge for
> the password. An RSC handler to hook UiApp entry is probably needed, as in
> version 1.
>
> Cc: Sai Chaganty 
> Cc: Isaac Oram 
> Cc: Nate DeSimone 
> Cc: Ankit Sinha 
> Cc: Liming Gao 
> Cc: Dandan Bi 
> Signed-off-by: Benjamin Doron 
> ---
>  Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc
>   | 1 +
>  Features/Intel/AdvancedFeaturePkg/Include/AdvancedFeaturesPcd.dsc
>| 1 +
>  Features/Intel/UserInterface/UserAuthFeaturePkg/Include/PostMemory.fdf
>   | 9 ++---
>  Features/Intel/UserInterface/UserAuthFeaturePkg/Include/UserAuthFeature.dsc
> | 3 +++
>  Features/Intel/UserInterface/UserAuthFeaturePkg/UserAuthFeaturePkg.dec
>   | 3 ++-
>  5 files changed, 13 insertions(+), 4 deletions(-)
>
> diff --git a/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc
> b/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc
> index 908fe4d1f7a9..8924dadcaa18 100644
> --- a/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc
> +++ b/Features/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc
> @@ -79,6 +79,7 @@
>#   gLogoFeaturePkgTokenSpaceGuid.PcdLogoFeatureEnable
>   |TRUE
>  gUserAuthFeaturePkgTokenSpaceGuid.PcdUserAuthenticationFeatureEnable
> |TRUE+  gUserAuthFeaturePkgTokenSpaceGuid.PcdUseVersion1
>   |FALSE
>  gVirtualKeyboardFeaturePkgTokenSpaceGuid.PcdVirtualKeyboardFeatureEnable
> |TRUE  #diff --git
> a/Features/Intel/AdvancedFeaturePkg/Include/AdvancedFeaturesPcd.dsc
> b/Features/Intel/AdvancedFeaturePkg/Include/AdvancedFeaturesPcd.dsc
> index d59e3e61b9b9..5365f0a1b844 100644
> --- a/Features/Intel/AdvancedFeaturePkg/Include/AdvancedFeaturesPcd.dsc
> +++ b/Features/Intel/AdvancedFeaturePkg/Include/AdvancedFeaturesPcd.dsc
> @@ -75,6 +75,7 @@
> gLogoFeaturePkgTokenSpaceGuid.PcdLogoFeatureEnable
> |FALSE
>  gUserAuthFeaturePkgTokenSpaceGuid.PcdUserAuthenticationFeatureEnable
> |FALSE+  gUserAuthFeaturePkgTokenSpaceGuid.PcdUseVersion1
> |FALSE
>  gVirtualKeyboardFeaturePkgTokenSpaceGuid.PcdVirtualKeyboardFeatureEnable
> |FALSE  #diff --git
> a/Features/Intel/UserInterface/UserAuthFeaturePkg/Include/PostMemory.fdf
> b/Features/Intel/UserInterface/UserAuthFeaturePkg/Include/PostMemory.fdf
> index 030dcbe763d8..827deb08de7e 100644
> ---
> a/Features/Intel/UserInterface/UserAuthFeaturePkg/Include/PostMemory.fdf
> +++ b/Features/Intel/UserInterface/UserAuthFeaturePkg/Include/PostMemory
> +++ .fdf
> @@ -7,6 +7,9 @@
>  # ## -INF
> UserAuthFeaturePkg/UserAuthenticationDxeSmm/UserAuthenticationDxe.inf-INF
> UserAuthFeaturePkg/UserAuthenticationDxeSmm/UserAuthentication2Dxe.inf-INF
> UserAuthFeaturePkg/UserAuthenticationDxeSmm/UserAuthenticationSmm.inf+!if
> gUserAuthFeaturePkgTokenSpaceGui