Purpose:
    Embed BIOS, platform.ini (and optinal EC) to an UEFI executable, and sign it.

Version (SEG) 100.00.02.44
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.30
SMP             Version (SEG) 200.02.00.14
--------------------------------------------------------------------------------
[Signer]
Changed
- Added BIOS2 field in Region section in the platform.ini.
- Added '_signed' to the output filename for the 'signefi' command.
- Linking UAC level changed to AsInvoker.
[SMP]
Fixed
- Retrieve the corresponding BIOS model name and version using the specified region type. [ITS#0125964]
- Reallocate a larger buffer to obtain information for IHISI 11h.
- Always update the BIOS via ESP, even if viaESP is set to 0 in platform.ini.
Changed
- Displaying the model name or version depends on the settings in platform.ini.
- Added the -bios2 parameter for flashing or dumping BIOS region #2 (type 65).
- Added support for flashing with the Insyde Linux Signer.
- Adding support for a new ACPI table that reports the parameter buffer address.

Version (SEG) 100.00.02.43
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.29
SMP             Version (SEG) 200.02.00.13
--------------------------------------------------------------------------------
[Signer]
- Remove Variable section in the platform.ini
- Add MergeOption field in PreserveDmiData section in the platform.ini.
[SMP]
Fixed
- Segment fault and kernel buffer overflow assertion.
- The image file that is any region type to flash can't be specified.
Changed
- Read OEM-ME update commands from platform.ini
- Add MergeOption field in PreserveDmiData section in the platform.ini.
- Rcalculate offset value when BIOS region doesn't locate the end of file. (Intel only)

Version (SEG) 100.00.02.42
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.29
SMP             Version (SEG) 200.02.00.12
--------------------------------------------------------------------------------
[Signer]
1. Add -nbg command to sign a PFAT BIOS with a specific key.
2. Add "PauseWhenFail" in the [FlashComplete] section to enable pausing flashing upon a failed update.
[SMP]
1. Fix that the progress bar stops at 60% when SummarizeDisplay is set to "1" in platform.ini.
2. Add "PauseWhenFail" in the [FlashComplete] section to enable pausing flashing upon a failed update.

Version (SEG) 100.00.02.41
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.28
SMP             Version (SEG) 200.02.00.11
--------------------------------------------------------------------------------
[Signer]
1. Add signlogo command to sign a logo image file.
2. Support the sha384 signature for Intel Lunar Lake.
3. Resolve the problem of saving files to shared storage such as Dropbox... etc.
[SMP]
1. Add support for the sha384 signature for Intel Lunar Lake.
2. Introduce -edt command functionality for flashing logo image files.
3. Suppress password prompts during secure flash operations when Secure Boot is enabled but the SCU password is not set.
4. Add -logoupdate command to update signed logo file to BIOS.

Version (SEG) 100.00.02.40
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.27
SMP             Version (SEG) 200.02.00.10
--------------------------------------------------------------------------------
[SMP]
1. Fix the problem of prompting to set a BIOS password even when other Security Levels are available.
2. Resolve the problem of BIOS flashing failing when using the -unvs command due to BIOS requesting validation of the BIOS password. [ITS#0115063]
3. Add non-shared EC region to the [Region] section in the platform.ini

Version (SEG) 100.00.02.39
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.27
SMP             Version (SEG) 200.02.00.09
--------------------------------------------------------------------------------
[Signer]
1. Resolve the issue of signing failure due to running this signer from outside its folder.
[SMP]
1. Resume BIOS flashing on the next boot after an unexpected power-off during the update.(ChasmFalls) [ITS##111214]
2. Resolve incomplete updates when DisableVerify is enabled in Platform.ini.

Version (SEG) 100.00.02.38
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.26
SMP             Version (SEG) 200.02.00.08
--------------------------------------------------------------------------------
[Signer]
In platform.ini:
1. Adjust 'viaESP' default 2 to flash via ESP partition first.
2. Add 'OnFlashingBeepFrequency' to set the buzzer frequency.
[SMP]
1. Fix "The limit of the size of the EC binary can't be larger than 2 MBytes". [ITS##0111285]
2. Support to make noise during secure flash at the buzzer. [ITS##0110383]

Version (SEG) 100.00.02.37
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.25
SMP             Version (SEG) 200.02.00.06
--------------------------------------------------------------------------------
[Signer]
1. Fix "Incorrect capsule header for PFAT BIOS." [ITS##0103289]
2. Add 'capsuleheader' command to attach the capsule header before the indicated file.
[SMP]
1. Display the build datetime during secure flash.
2. Fix "Segment fault and kernel buffer overflow assertion."
3. Added support for flashing 16M BIOS on systems with a 32M SPI Flash. [ITS##0098455]
4. Fix "Secure flash failed in Genoa platform." [ITS##0103840]
5. Check NVME storage for writing ESP partition.
6. Fix the issue of "Secure Flash fail when the image contains $_IFLASH_BIOSIMG."


Version (SEG) 100.00.02.36
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.24
SMP             Version (SEG) 200.02.00.06
--------------------------------------------------------------------------------
[Signer]
1. Add PDT/ISH help message
[SMP]
1. Implement IHISI 1Dh to support transfer Platform.ini to BIOS.
2. Show progress bar while running capsule update for Intel native ME.
3. Support to update the Intel ISH, PDT, and Retimer.
4. Update 41h spec. to fix "Security update issue" [ITS##0100430]
5. Update title string to "Please do not remove the Power"

Version (SEG) 100.00.02.35
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.23
SMP             Version (SEG) 200.02.00.05
--------------------------------------------------------------------------------
[Signer]
1. Fix "-signefi parameter can not sign a single package EFI file".
2. Fix "Cannot create a signed file in the web drive(Dropbox/One Drive etc.)".
[SMP]
1. Fix "Tool crash when the region size is over than the image file size"

Version (SEG) 100.00.02.34
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.22
SMP             Version (SEG) 200.02.00.04
--------------------------------------------------------------------------------
[Signer]
1. Fix "Can not sign Alder Lake BiosGuard BIOS." [ITS##0091572]
[SMP]
1. Ignore [Region] setting in platform.ini on AMD platform.
2. Fix "Tool crash during the PFR flashing."

Version (SEG) 100.00.02.33
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.21
SMP             Version (SEG) 200.02.00.03
--------------------------------------------------------------------------------
[SMP]
1. Enhance "command '-rmc' to get ROM map from starting of BIOS region rather than the top of a file."
2. Console redirect supports serial I/O protocol. [ITS##0089957]

Version (SEG) 100.00.02.32
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.21
SMP             Version (SEG) 200.02.00.02
--------------------------------------------------------------------------------
[SMP]
1. Fix "Secure Flash failed when there is image buffer allocated by BIOS." [ITS##0086374]

Version (SEG) 100.00.02.31
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.21
SMP             Version (SEG) 200.02.00.01
--------------------------------------------------------------------------------
[SMP]
1. Support Native ME, ISH and PDT flash while BIOS image has been signed with corresponding arguments.
2. Fix failed to flash none-secured PFAT BIOS image.

Version (SEG) 100.00.02.30
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.21
SMP             Version (SEG) 200.02.00.00
--------------------------------------------------------------------------------
[SMP]
1. Add parameter-buffer based IHISI support.
2. Fix failed to run FFT outside the tool directory.

Version (SEG) 100.00.02.29
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.21
SMP             Version (SEG) 200.00.00.21
--------------------------------------------------------------------------------
[Signer]
1. PFAT V3 support for full BIOS image
[SMP]
1. PFAT V3 support for full BIOS image
2. It takes too long time while flash PFAT block with Capsule Update. [ITS#0081111]

Version (SEG) 100.00.02.28
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.20
SMP             Version (SEG) 200.00.00.20
--------------------------------------------------------------------------------
[Signer]
1. PFAT V3 support
[SMP]
1. PFAT V3 support
2. '-rmc': Ignore digest data when comparing ROM map.
3. Show progress bar while flash PFAT block with Capsule Update. [ITS#0081111]

Version (SEG) 100.00.02.27
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.19
SMP             Version (SEG) 200.00.00.18
--------------------------------------------------------------------------------
[SMP]
1. Give a default message of the delay of finishing flash.

Version (SEG) 100.00.02.26
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.19
SMP             Version (SEG) 200.00.00.17
--------------------------------------------------------------------------------
[SMP]
1. Add new command '-rmc' for checking ROM map and remind the user of the layout is cheanged.
2. Add new command '-y' to suppress the "Yes/No" question and make the selection to "Yes".
3. Add new command '-delayexit:<second>' to delay flash utility termination after flashing BIOS completed.

Version (SEG) 100.00.02.25
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.19
SMP             Version (SEG) 200.00.00.16
--------------------------------------------------------------------------------
[SMP]
1. Fix: Disable write check will show an unexpected wrong message

Version (SEG) 100.00.02.24
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.19
SMP             Version (SEG) 200.00.00.15
--------------------------------------------------------------------------------
[Singer]
1. Support ME, ISH and PDT command
2. Fix bug that sign PFAT shouldn't including MZ header and secure signature

Version (SEG) 100.00.02.23
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.18
SMP             Version (SEG) 200.00.00.14
--------------------------------------------------------------------------------
[SMP]
1. Support show ME version

Version (SEG) 100.00.02.22
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.18
SMP             Version (SEG) 200.00.00.13
--------------------------------------------------------------------------------
[Signer]
1. Support Microcode command
2. Support Retimer command
3. Get Security Violation when BIOS enabled Unsigned FV support. [ITS#0074446]
[SMP]
1. Support IHISI Security issue

Version (SEG) 100.00.02.21
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.17
SMP             Version (SEG) 200.00.00.12
--------------------------------------------------------------------------------
[SMP]
1. Add Read UpdateEc Flag

Version (SEG) 100.00.02.20
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.17
SMP             Version (SEG) 200.00.00.11
--------------------------------------------------------------------------------
[SMP]
1. Support alp2 command
2. fix low battery issue.

Version (SEG) 100.00.02.19
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.17
SMP             Version (SEG) 200.00.00.10
--------------------------------------------------------------------------------
[Signer]
1. Update ACM feature.
[SMP]
1. Add beep command. [ITS#0066763]

Version (SEG) 100.00.02.18
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.16
SMP             Version (SEG) 200.00.00.09
--------------------------------------------------------------------------------
[SMP]
1. Fix Tool unable to flash when Command Buffer enabled. [ITS#0064394]
2. Fix Tool unable to flash by using -E command [ITS#0065630]

Version (SEG) 100.00.02.17
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.16
SMP             Version (SEG) 200.00.00.08
--------------------------------------------------------------------------------
[SMP]
1. Fix Can't preserve OA3 key and variable when enable bios guard function [ITS#64434]

Version (SEG) 100.00.02.16
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.16
SMP             Version (SEG) 200.00.00.07
--------------------------------------------------------------------------------
[iEFIFlashSigner]
1. Support Pfat V2 header
[SMP]
1. Support Pfat V2 header
2. Fix flash will hang when pack with packer.

Version (SEG) 100.00.02.15
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.15
SMP             Version (SEG) 200.00.00.06
--------------------------------------------------------------------------------
[iEFIFlashSigner]
1. Support AMD Dual Rom
2. Add new command -- pack to generate a package without signing.
3. Fix "-f" argument not working.
[SMP]
1. Fix secure flash failed when Ihisi command buffer present.
2. SummarizeDisplay UI enhance.

Version (SEG) 100.00.02.14
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.13
SMP             Version (SEG) 200.00.00.05
--------------------------------------------------------------------------------
[SMP]
1. Support AMD Dual Rom

Version (SEG) 100.00.02.13
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.13
SMP             Version (SEG) 200.00.00.04
--------------------------------------------------------------------------------
[SMP]
1. Enhance update Binary BVDT Check

Version (SEG) 100.00.02.12
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.13
SMP             Version (SEG) 200.00.00.03
--------------------------------------------------------------------------------
[iEFIFlashSigner]
1. Remove "Cert Key is not found in Executable" message

Version (SEG) 100.00.02.11
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.12
SMP             Version (SEG) 200.00.00.03
--------------------------------------------------------------------------------
[iEFIFlashSigner]
1. Support "-securebiosguard" command

[SMP]
1. Support Secure Flash Bios Gruard.
2. Fix Assert message
3. Enhance Secure Flash UI control


Version (SEG) 100.00.02.10
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.11
SMP             Version (SEG) 200.00.00.02
--------------------------------------------------------------------------------
[SMP]
1. Support Skip Image Size Check
2. Support chipset region update
3. Fix logic bug during unload driver

Version (SEG) 100.00.02.09
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.11
SMP             Version (SEG) 200.00.00.01
--------------------------------------------------------------------------------
[iEFIFlashSigner]
1. Support to sign with "-f cert.pfx" without importing to system.

[SMP]
1. Support Copper Point feature. 

Version (SEG) 100.00.02.08
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.10
SMP             Version (SEG) 100.00.09.02
--------------------------------------------------------------------------------
[SMP]
1. Support Muti Flash Rom Chip select funciton 


Version (SEG) 100.00.02.07
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.10
SMP             Version (SEG) 100.00.09.01
--------------------------------------------------------------------------------
[SMP]
1. Boot Guard Support
2. Direct Flash Support 

Version (SEG) 100.00.02.06
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.10
SMP             Version (SEG) 100.00.09.00
--------------------------------------------------------------------------------
[SMP]
1. Support Capsule Update Progress bar
2. Support DDT Flash update

Version (SEG) 100.00.02.05
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.10
SMP             Version (SEG) 100.00.08.11
--------------------------------------------------------------------------------
[SMP]
1. Support SecureFlashPlatformIniSetting flag.

[iEFIFlashSigner]
1. Support oem sign function.


Version (SEG) 100.00.02.04
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.09
SMP             Version (SEG) 100.00.08.10
--------------------------------------------------------------------------------
[SMP]
1. Support Reserve Dmi Data.

Version (SEG) 100.00.02.03         
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.09
SMP             Version (SEG) 100.00.08.09
--------------------------------------------------------------------------------
[SMP]
1. Fix free memory assert issue.

Version (SEG) 100.00.02.02
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.09
SMP             Version (SEG) 100.00.08.08
--------------------------------------------------------------------------------
[SMP]
1. Fix region check error issue.
2. Support OemCompleteAction feature.

Version (SEG) 100.00.02.01
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.09
SMP             Version (SEG) 100.00.08.07
--------------------------------------------------------------------------------
[iEFIFlashSigner]
1. Fix the error that signing PFAT not work.


Version (SEG) 100.00.02.00
================================================================================
iEFIFlashSigner Version (SEG) 100.00.01.08
SMP             Version (SEG) 100.00.08.07
--------------------------------------------------------------------------------
[iEFIFlashSigner]
1. Make it to show as default when invoking signtool.exe.
2. Update release note (this file) format to show separate information for iEFIFlashSigner and SMP.
[SMP]
1. Fix secure flash load platform.ini assert problem.


--------------------------------------------------------------------------------
Release Version (SEG) 100.00.01.07
SMP     Version (SEG) 100.00.08.06
--------------------------------------------------------------------------------
1. [SMP]  fix secure flash load platform.ini assert problem.
2. [SMP]  support IPMI BMC Flash Update.

--------------------------------------------------------------------------------
Release Version (SEG) 100.00.01.07
SMP     Version (SEG) 100.00.08.05
--------------------------------------------------------------------------------
1. [SMP]  fix DirectFlash hangup issue
2. [SMP]  add skip platform region check in platform.ini.
3. [SMP]  fix flash fail but return wrong status issue

--------------------------------------------------------------------------------
Release Version (SEG) 100.00.01.07
SMP     Version (SEG) 100.00.08.04
--------------------------------------------------------------------------------
1. Update SMP 100.00.08.04

--------------------------------------------------------------------------------
Release Version (SEG) 100.00.01.07
SMP     Version (SEG) 100.00.08.01
--------------------------------------------------------------------------------
1. Update SMP 100.00.08.00

--------------------------------------------------------------------------------
Release Version (SEG) 100.00.01.07
SMP     Version (SEG) 100.00.07.30
--------------------------------------------------------------------------------
1. Update SMP 100.00.07.30

--------------------------------------------------------------------------------
Release Version (SEG) 100.00.01.07
SMP     Version (SEG) 100.00.07.01
--------------------------------------------------------------------------------
1. Update SMP 100.00.07.01

--------------------------------------------------------------------------------
Release Version (SEG) 100.00.01.07
SMP     Version (SEG) 100.00.06.15
--------------------------------------------------------------------------------
1. Update SMP 100.00.06.15

--------------------------------------------------------------------------------
Release Version (SEG) 100.00.01.07
--------------------------------------------------------------------------------
1. Capsule header's image size is modified to be "BIOS size" + "Capsule header size".
2. Capsule header's flag is preset to 0x00050000, but is set to 0x00000000 if the argument "-instant" is input.

--------------------------------------------------------------------------------
Release Version (SEG) 100.00.01.05
--------------------------------------------------------------------------------
1. Fix the bug that "-opath" does not function properly.
2. Add support to the situation when working directory is not the same as the tool's or signtool's directory.
3. Add support to specify signtool's directory. (by option "-signtool")
4. Modify not to set the output signed image read-only.
	
--------------------------------------------------------------------------------
Release Version (SEG) 100.00.01.04
--------------------------------------------------------------------------------
1. Add support to use password. (by option "-pass")
	
--------------------------------------------------------------------------------
Release Version (SEG) 100.00.01.03
--------------------------------------------------------------------------------
1. Add new feature to insert capsule header to the header of signed image. (by option "-capsuleheader")
2. Add support for cryptographic service provider. 
  (New parameters: "-c <Cryptographic Service Provider>", "-k <Private key container name>", and "-f <Signing certificate in a file>").
	
--------------------------------------------------------------------------------
Release Version (SEG) 100.00.01.02
--------------------------------------------------------------------------------
1. Modification are made to meet the additional command.ini.

--------------------------------------------------------------------------------
Release Version (SEG) 100.00.01.01
--------------------------------------------------------------------------------
Bug:
1. Add extra buffer for driver that "SignEFI" needs.

--------------------------------------------------------------------------------
Release Version (SEG) 100.00.01.00
--------------------------------------------------------------------------------
Features:
1. Add "-x32" to support 32bit image.
	
--------------------------------------------------------------------------------
Release Version (SEG) 100.00.00.01
--------------------------------------------------------------------------------
Features:
1. Modify the way data insertion to execution file from many templates with different space preservation to dynamical section insertion to a single template.

--------------------------------------------------------------------------------
Release Version (SEG) 100.00.00.00
--------------------------------------------------------------------------------
Initial version
