mirror of https://github.com/acidanthera/audk.git
229 lines
10 KiB
Plaintext
229 lines
10 KiB
Plaintext
##########################################################################################
|
|
!!!!!!!!!!!!!!!!! Notes for this ChangeLog.txt !!!!!!!!!!!!!!!!!
|
|
|
|
This log file is used to record two kinds of important information:
|
|
a) "Non-Compatible Changes": all non-compatible changes should be recorded. These info
|
|
will help the package user to merge this package; and some non-compatible changes
|
|
can also be added into release notes as news features when we release this package.
|
|
Normally Non-Compatible Changes contains the following types:
|
|
1) Package's external services were changed/updated
|
|
2) Package's common .h file is renamed, deleted, or the file path is changed.
|
|
3) The definition of package's common data structure is changed
|
|
...
|
|
|
|
b) "Important Compatible Changes": some important compatible changes can aslo be recorded
|
|
in this file, and we can add these updating into release notes when we release this
|
|
package.
|
|
|
|
Non-Compatible and Compatible example format:
|
|
==========================================================================================
|
|
EDK_0010: Non-Compatible: owner
|
|
|
|
Class_HFile: PPI A of MdePkg has been removed.
|
|
|
|
Code Change :
|
|
1) Removed the .h file: MdePkg\Include\Ppi\A.h
|
|
|
|
Possible Impacts:
|
|
1) All modules that used this PPI A should be updated.
|
|
|
|
==========================================================================================
|
|
EDK_0000: Compatible: owner
|
|
|
|
Class_BuildTool: with the EDK_0000 build.exe, the build performance is enhanced great.
|
|
|
|
Code Change :
|
|
1) BaseTools\Bin\Win32\build.exe
|
|
|
|
!!!!!!!!!!!!!!!!!! End of Notes !!!!!!!!!!!!!!!!!!
|
|
##########################################################################################
|
|
|
|
==========================================================================================
|
|
EDK_4310: Non-Compatible: qhuang8
|
|
Class_ModuleRemove[0]: Remove AtapiPassThru module from MdeModulePkg. AtapiPassThru
|
|
module is only used for testing. We already have a driver in OptionRomPkg to
|
|
produce ScsiPassThru and ExtScsiPassThru based on PCD setting. We can remove it
|
|
from MdeModulePkg.
|
|
|
|
Code Change :
|
|
1) Remove module MdeModulePkg/Bus/Pci/AtapiPassThruDxe/AtapiPassThru.inf
|
|
|
|
Impact to platform code:
|
|
If a platform happens to refer to this module in their dsc file, please use the
|
|
counterpart module in OptionRomPkg.
|
|
|
|
==========================================================================================
|
|
EDK_4067: Non-Compatible: qwang12
|
|
Class_PIEnable[6]: PEI core does not build FV HOB upon notification of a EFI_PEI_FIRMWARE_VOLUME_INFO_PPI automatically.
|
|
|
|
Code Change :
|
|
1) MdeModulePkg/Core/Pei/FwVol/FwVol.c
|
|
|
|
Impact to platform code:
|
|
1) If platform module want to inform both PEI core and DXE core about the existance of new FV
|
|
it must both install EFI_PEI_FIRMWARE_VOLUME_INFO_PPI and FV HOB.
|
|
|
|
A example is given belows:
|
|
|
|
PiLibInstallFvInfoPpi (
|
|
NULL,
|
|
Buffer,
|
|
(UINT32) FvHeader->FvLength,
|
|
NULL,
|
|
NULL
|
|
);
|
|
|
|
BuildFvHob (
|
|
(EFI_PHYSICAL_ADDRESS) (UINTN) Buffer,
|
|
(UINT32) FvHeader->FvLength
|
|
);
|
|
|
|
PEI core does not automatically build FV HOB upon notification of a EFI_PEI_FIRMWARE_VOLUME_INFO_PPI.
|
|
The description in Item 2 in Section 4.8.1.2 in Vol 1 of PI spec will be updated to remove the
|
|
"Create a new firmware volume HOB" wording.
|
|
|
|
|
|
==========================================================================================
|
|
EDK_4000-4006: Compatible: qhuang8
|
|
|
|
Class_UefiEnable[0]: Uefi feature -Add component name 2 protocol support for
|
|
all drivers that support component name protocol
|
|
|
|
|
|
Code Change :
|
|
1) Update MdeModulePkg/Bus/Pci/*
|
|
2) Update MdeModulePkg/Bus/Scsi/*
|
|
3) Update MdeModulePkg/Bus/Usb/*
|
|
4) Update MdeModulePkg/Universal/Disk/*
|
|
5) Update MdeModulePkg/Universal/DebugPortDxe/*
|
|
6) Update MdeModulePkg/Universal/Console/*
|
|
7) Update MdeModulePkg/Universal/Network/*
|
|
|
|
possible impact:
|
|
1) To produce the component name 2 protocol, platform DSC file needs to set feature
|
|
flag 'PcdComponentName2Disable' to 'FALSE'
|
|
|
|
==========================================================================================
|
|
EDK_3967: Non-Compatible: lgao4
|
|
|
|
Class_Library: Remove PeCoffLoader library class and its instances.
|
|
|
|
Code Change :
|
|
1) Remove MdeModulePkg/Include/Library/PeCoffLoaderLib.h
|
|
2) Remove MdeModulePkg/Library/DxePeCoffLoaderFromHobLib and PeiDxePeCoffLoaderLib instance
|
|
3) Modify PeiCore, DxeIpl and DxeCore to use PeCoffLib in place of PeCoffLoaderLib.
|
|
|
|
Possible Impacts:
|
|
1) All modules don't use PeCoffloader library class any longer to load PeImage.
|
|
If necessary, they should use PeCoffLib of MdePkg to load PeImage.
|
|
|
|
==========================================================================================
|
|
EDK_3931: Non-Compatible: klu2
|
|
|
|
Class_PIEnable[5]: New library class for S3Resume and Recovery for DxeIpl PEIM.
|
|
|
|
Code Change:
|
|
1) Add new library class
|
|
a) MdeModulePkg/Include/Library/S3Lib.h
|
|
b) MdeModulePkg/Include/Library/RecoveryLib.h
|
|
2) Add NULL library instances for MdeModulePkg:
|
|
a) MdeModulePkg/Library/PeiS3LibNull/PeiS3LibNull.inf.
|
|
b) MdeModulePkg/Library/PeiRecoveryLibNull/PeiRecoveryLibNull.inf
|
|
3) Add framework implement library instances:
|
|
a) IntelFrameworkModulePkg/Library/PeiS3Lib/PeiS3Lib.inf
|
|
b) IntelFrameworkModulePkg/Library/PeiRecovery/PeiRecovery.inf
|
|
|
|
Possible Impacts:
|
|
1) In DSC file, real platform should select:
|
|
S3Lib library class -> IntelFrameworkModulePkg/Library/PeiS3Lib/PeiS3Lib.inf
|
|
RecoveryLib library class -> IntelFrameworkModulePkg/Library/PeiRecovery/PeiRecovery.inf
|
|
|
|
Nt32 platform should select:
|
|
S3Lib library class -> MdeModulePkg/Library/PeiS3LibNull/PeiS3LibNull.inf.
|
|
RecoveryLib library class -> MdeModulePkg/Library/PeiRecoveryLibNull/PeiRecoveryLibNull.inf
|
|
|
|
==========================================================================================
|
|
EDK_3922: Non-Compatible: qwang12, klu2
|
|
Class_PIEnable[2]: Update PEI core to only consume EFI_PEI_FIRMWARE_VOLUME_INFO_PPI
|
|
|
|
Code Change :
|
|
1) Update PEI core to consume EFI_PEI_FIRMWARE_VOLUME_INFO_PPI to get the location of new FVs other than BFV
|
|
reported by PEIMs .
|
|
|
|
Possible Impacts:
|
|
1) Platform code that is going to inform PEI core about the new FVs other than BFV should install
|
|
EFI_PEI_FIRMWARE_VOLUME_INFO_PPI. A library function named PeiPiLibBuildPiFvInfoPpi() defined in
|
|
MdePkg\Include\Library\PeiPiLib.h can be used to install the PPI.
|
|
There are two notes worth mentioning:
|
|
1) Platform PEIMs should report at least FVs containing DXE_CORE and all other PEIM to PEI Core if they
|
|
are not in the BFV.
|
|
2) PEI core will dispatch PEIMs in the FV reported by PeiPiLibBuildPiFvInfoPpi() and invoke BuildFvHob () to build the
|
|
FV HOB for this FV (see Section 4.8.1.2 of Vol 1 named Multiple Firmware Volume Support for details).
|
|
If PEIM only want to inform DXE core about the existance of the new FV, it should call BuildFvHob instead.
|
|
|
|
|
|
Class_PIEnable[3]: Update PEI core to support RegisterForShadow feature introduced by PI spec
|
|
|
|
Code Change :
|
|
1) DXEIPL no longer produce EFI_PEI_FV_FILE_LOADER_PPI defined in Framework PEI CIS.
|
|
|
|
Possible Impacts:
|
|
|
|
1)All PEIMs that need to shadow itself into memory and rerun the entry point should be updated to call RegisterForShadow
|
|
(PeiServicesLibRegisterForShadow () is a helper function).
|
|
2)The depex of PEIMs that including EFI_PEI_FV_FILE_LOADER_PPI (or gEfiPeiFvFileLoaderPpiGuid) should be removed.
|
|
|
|
|
|
Class_PIEnable[4]: Update PEI core to produce other new features defined in PI spec
|
|
|
|
Code Change :
|
|
1) Add the following services: FfsGetFileInfo, FfsFindFileByName and FfsGetVolumeInfo
|
|
|
|
Possible Impacts:
|
|
|
|
1) Platform code is recommended to make use of these new PI features. The functions in MdePkg/Include/Library/PeiServicesLib.h are
|
|
recommended as PeiServices is saved for every PEI Services API invokation.
|
|
|
|
==========================================================================================
|
|
EDK_3871: Non-Compatible: klu2
|
|
|
|
Class_PIEnable[1]: Use new entry point for PeiCore defined in PI specification.
|
|
|
|
Code Change:
|
|
1) PeiMain module use PeiCoreEntryPoint library class but *not* original OldPeiCoreEntryPoint.
|
|
2) The memory service in PeiMain module get CAR base and size from parameter of PeiCore's
|
|
Entry point directly but *not* computed from stack's base.
|
|
|
|
Possible Impacts:
|
|
1) Platform should select MdePkg/Library/PeiCoreEntryPoint/PeiCoreEntryPoint.inf for
|
|
PeiMain module.
|
|
2) The SecCore module should provide parameters for new entry point defined in
|
|
MdePkg\Include\Library\PeiCoreEntryPoint.h
|
|
|
|
==========================================================================================
|
|
EDK_3866: Compatible: qhuang8
|
|
|
|
Class_UefiEnable[0]: Uefi2.1 feature - Add Hardware Error Record Persistence Support
|
|
Code Change :
|
|
1) Modify MdeModulePkg/Universal/Variable/RuntimeDxe
|
|
2) Modify MdeModulePkg/Universal/Variable/EmuRuntimeDxe
|
|
|
|
==========================================================================================
|
|
EDK_3773: Non-Compatible: qwang12
|
|
|
|
Class_PIEnable[0]: Enable DXE Core to produce EFI_FIRMWARE_VOLUME2_PROTOCOL only.
|
|
|
|
Code Change :
|
|
1) Modify MdeModulePkg/Core/Dxe/DxeMain.inf module to produce only
|
|
EFI_FIRMWARE_VOLUME2_PROTOCOL. Previously, EFI_FIRMWARE_VOLUME_PROTOCOL
|
|
is produced by Dxe Core.
|
|
|
|
Possible Impacts:
|
|
1) All modules that references EFI_FIRMWARE_VOLUME_PROTOCOL must be updated to use
|
|
EFI_FIRMWARE_VOLUME2_PROTOCOL.
|
|
2) All modules that references gEfiFirmwareVolumeProtocolGuid must be updated to
|
|
use gEfiFirmwareVolume2ProtocolGuid.
|
|
3) The gEfiFirmwareVolumeProtocolGuid in [Depex] section of INF file should updated.
|
|
And the package dependency should also be changed if needed due to this protocol
|
|
GUID change.
|