]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/ChangeLog.txt
Add change log for the incompatible changes in MdePkg in Edk r9817.
[mirror_edk2.git] / MdePkg / ChangeLog.txt
index e9f649249f6dc562a7c3cd187f74c9e2e0f5f9b3..ab276e8973983b70cee5f4881ce48e5d858b52ac 100644 (file)
@@ -154,7 +154,7 @@ EDK_5869:  Non-Compatible: qhuang8
                        Modules using this macro, it needs to adapt to new interface.\r
                        \r
 EDK_5939:  Non-Compatible: qwang12\r
-  Library API moved frrom HiiLib to UefiLib.\r
+  Library API moved from HiiLib to UefiLib.\r
   \r
                Code Change:\r
                        Change HiiLibGetCurrentLanguage to GetCurrentLanguage and moved it from HiiLib to UefiLib.\r
@@ -206,6 +206,17 @@ Possible Impacts:
                        Customer's module that reference SafeFreePool need to updated. Otherwise\r
                        a build break may occur.\r
                        \r
+EDK_6455-6460:  Non-Compatible: klu2\r
+    1. Clean up device path protocol header file, move device path utility macros to MdePkg\Include\DevicePathLib.h.\r
+    2. I remove "Efi" prefix for this utility function macro name. \r
+    3. The upacked device path type is removed. Should use device path utility macro to access structure's member.\r
+\r
+Possible Impacts:\r
+    1. Customer's module that access device path node's structure need use DevicePathLib\r
+    2. Should not use unpacked type device path node, this type is retired.\r
+    3. If want to access private member in device path node, customer module need DuplicateDevicePath() at first to \r
+       make sure node is in alignment.\r
+              \r
 EDK_6496-6519:  Non-Compatible: qhuang8\r
 \r
        A bundle of library class/instance renames, moves and merges:\r
@@ -235,4 +246,92 @@ EDK_6565:  Non-Compatible: qhuang8
 Possible Impacts:\r
        Modules depending on UefiScsiLib for these macros should update the source to use new UefiLib macros\r
        EFI_TIMER_PERIOD_MICROSECONDS(X), EFI_TIMER_PERIOD_MILLISECONDS(X) and EFI_TIMER_PERIOD_SECONDS(X) for managing Timer Events.\r
-       Especailly, EFI_SCSI_STALL_SECONDS(a) is simply replaced by EFI_TIMER_PERIOD_SECONDS(a)
\ No newline at end of file
+       Especailly, EFI_SCSI_STALL_SECONDS(a) is simply replaced by EFI_TIMER_PERIOD_SECONDS(a)\r
+\r
+EDK_6886:  Non-Compatible: mdkinney\r
+       \r
+       Rename _CR macro defined in MdePkg/Include/Base.h to BASE_CR macro aligned to MdeLib spec.\r
+\r
+Possible Impacts:\r
+       All source codes that depends on _CR macro must be changed to use BASE_CR.      \r
+\r
+EDK_6935:  Non-Compatible: lgao4\r
+       \r
+       In MdePkg/Include/Guid/FileSystemVolumeLabelInfo.h file, to follow UEFI specification.\r
+       Rename EFI_FILE_SYSTEM_VOLUME_LABEL_INFO_ID_GUID to EFI_FILE_SYSTEM_VOLUME_LABEL_ID\r
+       Rename EFI_FILE_SYSTEM_VOLUME_LABEL_INFO to EFI_FILE_SYSTEM_VOLUME_LABEL.\r
+\r
+Possible Impacts:\r
+       All source codes that refer to EFI_FILE_SYSTEM_VOLUME_LABEL_INFO_ID_GUID or EFI_FILE_SYSTEM_VOLUME_LABEL_INFO\r
+       must be changed to use their definitions from UEFI specification.       \r
+\r
+EDK_6974:  Non-Compatible: lgao4\r
+       \r
+       In MdePkg/Include/Uefi/UefiSpec.h file, to follow UEFI2.1 specification.\r
+       Rename struct EFI_KEY_OPTION.KeyOptions to EFI_KEY_OPTION.KeyData\r
+\r
+Possible Impacts:\r
+       All source codes that refer to EFI_KEY_OPTION.KeyOptions\r
+       must be changed to use EFI_KEY_OPTION.KeyData from UEFI specification.  \r
+\r
+EDK_7057:  Non-Compatible: qhuang8\r
+       Retired the following macros defined in MdePkg/Include/Uefi/UefiBaseType.h:\r
+       EFI_SIGNATURE_16, EFI_SIGNATURE_32, EFI_SIGNATURE_64, EFI_FIELD_OFFSET, EFI_MAX_BIT & EFI_MAX_ADDRESS\r
+       \r
+Possible impacts:\r
+       All EDKII native source code needs to update to use the equivelent macros (without "EFI_" prefix except for\r
+       EFI_FIELD_OFFSET) defined in MdePkg\Include\Base.h and MdePkg\Include\$(ARCH)\ProcessorBinding.h:\r
+       EFI_SIGNATURE_16 -> SIGNATURE_16\r
+       EFI_SIGNATURE_32 -> SIGNATURE_32\r
+       EFI_SIGNATURE_64 -> SIGNATURE_64\r
+       EFI_FIELD_OFFSET -> OFFSET_OF\r
+       EFI_MAX_BIT      -> MAX_BIT\r
+       EFI_MAX_ADDRESS  -> MAX_ADDRESS\r
+\r
+EDK_7467:  Non-Compatible: qhuang8\r
+       Remove the macro value TIME_OUT defined in MdePkg/Include/Uefi/UefiUsbLib.h and replace it with a new PCD entry:\r
+       gEfiMdePkgTokenSpaceGuid.PcdUsbTransferTimeoutValue  \r
+       \r
+Possible impacts:\r
+       All modules depending on macro TIME_OUT in MdePkg/Include/Uefi/UefiUsbLib.h should use PcdGet32 (PcdUsbTransferTimeoutValue)\r
+       for the USB transaction, include "PcdLib" in INF [LibraryClasses] section and add "#include <Library/PcdLib.h>" in module\r
+       source.\r
+\r
+EDK_9384: Non-Compatible: xli24\r
+\r
+       2 default values of status code PCDs updated in MdePkg.dec.\r
+\r
+       1) PcdStatusCodeValueBootServiceExit. Its value is changed from 0x3100019 to 0x3101019, which equals EFI_SOFTWARE_EFI_BOOT_SERVICE | EFI_SW_BS_PC_EXIT_BOOT_SERVICES.\r
+       2) PcdStatusCodeValuePeiHandoffToDxe. Its value is changed from 0x3031001 to 0x3021001, which equals EFI_SOFTWARE_PEI_CORE | EFI_SW_PEI_CORE_PC_HANDOFF_TO_NEXT. \r
+\r
+Possible impacts:\r
+       Platforms which uses the default values of PCD (not overriding in DSC) would get updated report status code values for boot service exit and PEI hand-off.\r
+\r
+EDK_9385: Non-Compatible: xli24\r
+\r
+       Default value of PcdStatusCodeValueSetVirtualAddressMap updated in MdePkg.dec.\r
+       The value of PcdStatusCodeValueSetVirtualAddressMap is changed from 0x03101004 to 0x03111004, which equals EFI_SOFTWARE_EFI_RUNTIME_SERVICE | EFI_SW_RS_PC_SET_VIRTUAL_ADDRESS_MAP.\r
+\r
+\r
+Possible impacts:\r
+       Platforms which uses the default value of PCD (not overriding in DSC) would get updated report status code value for setting virtual address map.\r
+\r
+EDK_9394: Non-Compatible: qhuang8\r
+\r
+       GUID value of EFI_FIRMWARE_VOLUME_BLOCK_PROTOCOL_GUID and gEfiFirmwareVolumeBlockProtocolGuid has been changed to \r
+        that of EFI_FIRMWARE_VOLUME_BLOCK2_PROTOCOL_GUID defined in PI 1.2 spec.\r
+               \r
+\r
+Possible impacts:\r
+       This is a source level compatible change, but not binary level. We might need to rebuild some old binary modules to work with newer version of MdePkg.\r
+\r
+\r
+EDK_9815: Non-Compatible: qhuang8\r
+       Scrub EFI_ATA_IDENTIFY_DATA and EFI_ATAPI_IDENTIFY_DATA to strict follow newest ATA spec (ATA-8). This is a build non-backward compatible changes for ATA-related modules.\r
+       The ATA5_IDENTIFY_DATA in MdePkg\IndustryStandards\Atapi.h is exactly the same as the original ATA_IDENTIFY_DATA for backward compatibility support to follow ATA-5 spec. \r
+\r
+Possible impacts:\r
+       We can fix the build breaks for some renaming issues (e.g. Word 49 in EFI_ATA_IDENTIFY_DATA renamed from "capabilities" to "capabilities_49")\r
+       For the fields that are "obsolete" in newest ATA spec, we can use type-cast to older ATA spec structure (e.g. ATA5_IDENTIFY_DATA). \r
+       (There  should not be any runtime issues if the build issues have got solved in the source correctly.)\r
+\r