Updated the revision number of build.exe and GenFds.exe
[mirror_edk2.git] / MdeModulePkg / ChangeLog.txt
CommitLineData
5182bf8e 1##########################################################################################\r
2!!!!!!!!!!!!!!!!! Notes for this ChangeLog.txt !!!!!!!!!!!!!!!!!\r
3\r
4This log file is used to record two kinds of important information:\r
5 a) "Non-Compatible Changes": all non-compatible changes should be recorded. These info\r
6 will help the package user to merge this package; and some non-compatible changes\r
7 can also be added into release notes as news features when we release this package.\r
8 Normally Non-Compatible Changes contains the following types:\r
9 1) Package's external services were changed/updated\r
10 2) Package's common .h file is renamed, deleted, or the file path is changed.\r
11 3) The definition of package's common data structure is changed\r
12 ...\r
13\r
14 b) "Important Compatible Changes": some important compatible changes can aslo be recorded\r
15 in this file, and we can add these updating into release notes when we release this\r
16 package.\r
17\r
18Non-Compatible and Compatible example format:\r
19==========================================================================================\r
20EDK_0010: Non-Compatible: owner\r
21\r
22 Class_HFile: PPI A of MdePkg has been removed.\r
23\r
24 Code Change :\r
25 1) Removed the .h file: MdePkg\Include\Ppi\A.h\r
26\r
27 Possible Impacts:\r
28 1) All modules that used this PPI A should be updated.\r
29\r
30==========================================================================================\r
31EDK_0000: Compatible: owner\r
32\r
33 Class_BuildTool: with the EDK_0000 build.exe, the build performance is enhanced great.\r
34\r
35 Code Change :\r
36 1) BaseTools\Bin\Win32\build.exe\r
37\r
38!!!!!!!!!!!!!!!!!! End of Notes !!!!!!!!!!!!!!!!!!\r
39##########################################################################################\r
40\r
02cc3e96 41==========================================================================================\r
42EDK_4000-4006: Compatible: qhuang8\r
43\r
44 Class_UefiEnable[0]: Uefi feature -Add component name 2 protocol support for\r
45 all drivers that support component name protocol\r
46 \r
47\r
48 Code Change :\r
49 1) Update MdeModulePkg/Bus/Pci/*\r
50 2) Update MdeModulePkg/Bus/Scsi/*\r
51 3) Update MdeModulePkg/Bus/Usb/*\r
52 4) Update MdeModulePkg/Universal/Disk/*\r
53 5) Update MdeModulePkg/Universal/DebugPortDxe/*\r
54 6) Update MdeModulePkg/Universal/Console/*\r
55 7) Update MdeModulePkg/Universal/Network/*\r
56 \r
57 possible impact:\r
58 1) To produce the component name 2 protocol, platform DSC file needs to set feature\r
59 flag 'PcdComponentName2Disable' to 'FALSE'\r
60\r
6a9d345a 61==========================================================================================\r
a0ae8996
LG
62EDK_3967: Non-Compatible: lgao4\r
63\r
64 Class_Library: Remove PeCoffLoader library class and its instances.\r
65\r
66 Code Change :\r
67 1) Remove MdeModulePkg/Include/Library/PeCoffLoaderLib.h\r
68 2) Remove MdeModulePkg/Library/DxePeCoffLoaderFromHobLib and PeiDxePeCoffLoaderLib instance\r
69 3) Modify PeiCore, DxeIpl and DxeCore to use PeCoffLib in place of PeCoffLoaderLib.\r
70\r
71 Possible Impacts:\r
72 1) All modules don't use PeCoffloader library class any longer to load PeImage. \r
73 If necessary, they should use PeCoffLib of MdePkg to load PeImage.\r
74\r
75==========================================================================================\r
76EDK_3931: Non-Compatible: klu2\r
6a9d345a 77 \r
d3d32ac0 78 Class_PIEnable[5]: New library class for S3Resume and Recovery for DxeIpl PEIM.\r
6a9d345a 79 \r
80 Code Change:\r
d3d32ac0 81 1) Add new library class \r
82 a) MdeModulePkg/Include/Library/S3Lib.h\r
83 b) MdeModulePkg/Include/Library/RecoveryLib.h\r
84 2) Add NULL library instances for MdeModulePkg:\r
78818e8e 85 a) MdeModulePkg/Library/PeiS3LibNull/PeiS3LibNull.inf.\r
86 b) MdeModulePkg/Library/PeiRecoveryLibNull/PeiRecoveryLibNull.inf\r
d3d32ac0 87 3) Add framework implement library instances:\r
78818e8e 88 a) IntelFrameworkModulePkg/Library/PeiS3Lib/PeiS3Lib.inf\r
89 b) IntelFrameworkModulePkg/Library/PeiRecovery/PeiRecovery.inf\r
6a9d345a 90 \r
91 Possible Impacts:\r
78818e8e 92 1) In DSC file, real platform should select:\r
93 S3Lib library class -> IntelFrameworkModulePkg/Library/PeiS3Lib/PeiS3Lib.inf\r
94 RecoveryLib library class -> IntelFrameworkModulePkg/Library/PeiRecovery/PeiRecovery.inf\r
95 \r
96 Nt32 platform should select:\r
97 S3Lib library class -> MdeModulePkg/Library/PeiS3LibNull/PeiS3LibNull.inf.\r
98 RecoveryLib library class -> MdeModulePkg/Library/PeiRecoveryLibNull/PeiRecoveryLibNull.inf\r
99 \r
b4f5f5d6 100==========================================================================================\r
101EDK_3922: Non-Compatible: qwang12, klu2\r
102 Class_PIEnable[2]: Update PEI core to only consume EFI_PEI_FIRMWARE_VOLUME_INFO_PPI\r
103\r
104 Code Change :\r
105 1) Update PEI core to consume EFI_PEI_FIRMWARE_VOLUME_INFO_PPI to get the location of new FVs other than BFV\r
106 reported by PEIMs . \r
107\r
108 Possible Impacts:\r
109 1) Platform code that is going to inform PEI core about the new FVs other than BFV should install \r
110 EFI_PEI_FIRMWARE_VOLUME_INFO_PPI. A library function named PeiPiLibBuildPiFvInfoPpi() defined in \r
111 MdePkg\Include\Library\PeiPiLib.h can be used to install the PPI. \r
112 There are two notes worth mentioning:\r
113 1) Platform PEIMs should report at least FVs containing DXE_CORE and all other PEIM to PEI Core if they\r
114 are not in the BFV. \r
115 2) PEI core will dispatch PEIMs in the FV reported by PeiPiLibBuildPiFvInfoPpi() and invoke BuildFvHob () to build the \r
116 FV HOB for this FV (see Section 4.8.1.2 of Vol 1 named Multiple Firmware Volume Support for details). \r
117 If PEIM only want to inform DXE core about the existance of the new FV, it should call BuildFvHob instead.\r
118 \r
119 \r
120 Class_PIEnable[3]: Update PEI core to support RegisterForShadow feature introduced by PI spec\r
121\r
122 Code Change :\r
123 1) DXEIPL no longer produce EFI_PEI_FV_FILE_LOADER_PPI defined in Framework PEI CIS.\r
124\r
125 Possible Impacts:\r
126\r
127 1)All PEIMs that need to shadow itself into memory and rerun the entry point should be updated to call RegisterForShadow\r
128 (PeiServicesLibRegisterForShadow () is a helper function).\r
129 2)The depex of PEIMs that including EFI_PEI_FV_FILE_LOADER_PPI (or gEfiPeiFvFileLoaderPpiGuid) should be removed.\r
130 \r
131\r
132 Class_PIEnable[4]: Update PEI core to produce other new features defined in PI spec\r
133\r
134 Code Change :\r
135 1) Add the following services: FfsGetFileInfo, FfsFindFileByName and FfsGetVolumeInfo\r
136\r
137 Possible Impacts:\r
138\r
139 1) Platform code is recommended to make use of these new PI features. The functions in MdePkg/Include/Library/PeiServicesLib.h are \r
140 recommended as PeiServices is saved for every PEI Services API invokation.\r
141\r
d3d32ac0 142==========================================================================================\r
143EDK_3871: Non-Compatible: klu2\r
144 \r
145 Class_PIEnable[1]: Use new entry point for PeiCore defined in PI specification.\r
146 \r
147 Code Change:\r
148 1) PeiMain module use PeiCoreEntryPoint library class but *not* original OldPeiCoreEntryPoint.\r
149 2) The memory service in PeiMain module get CAR base and size from parameter of PeiCore's\r
150 Entry point directly but *not* computed from stack's base.\r
151 \r
152 Possible Impacts:\r
153 1) Platform should select MdePkg/Library/PeiCoreEntryPoint/PeiCoreEntryPoint.inf for \r
154 PeiMain module.\r
155 2) The SecCore module should provide parameters for new entry point defined in \r
156 MdePkg\Include\Library\PeiCoreEntryPoint.h\r
6a9d345a 157 \r
c6492839 158==========================================================================================\r
e4b561fb 159EDK_3866: Compatible: qhuang8\r
c6492839 160\r
161 Class_UefiEnable[0]: Uefi2.1 feature - Add Hardware Error Record Persistence Support \r
162 Code Change :\r
163 1) Modify MdeModulePkg/Universal/Variable/RuntimeDxe\r
164 2) Modify MdeModulePkg/Universal/Variable/EmuRuntimeDxe\r
d3d32ac0 165\r
166==========================================================================================\r
167EDK_3773: Non-Compatible: qwang12\r
168\r
169 Class_PIEnable[0]: Enable DXE Core to produce EFI_FIRMWARE_VOLUME2_PROTOCOL only.\r
170\r
171 Code Change :\r
172 1) Modify MdeModulePkg/Core/Dxe/DxeMain.inf module to produce only\r
173 EFI_FIRMWARE_VOLUME2_PROTOCOL. Previously, EFI_FIRMWARE_VOLUME_PROTOCOL\r
174 is produced by Dxe Core.\r
175\r
176 Possible Impacts:\r
177 1) All modules that references EFI_FIRMWARE_VOLUME_PROTOCOL must be updated to use\r
178 EFI_FIRMWARE_VOLUME2_PROTOCOL.\r
179 2) All modules that references gEfiFirmwareVolumeProtocolGuid must be updated to\r
180 use gEfiFirmwareVolume2ProtocolGuid.\r
181 3) The gEfiFirmwareVolumeProtocolGuid in [Depex] section of INF file should updated.\r
182 And the package dependency should also be changed if needed due to this protocol\r
b9f020e9 183 GUID change.\r