Ray: If they are not recommended to be used any longer, I suggest to update IncompatiblePciDeviceSupportDxe driver not use them. The driver can have its incompatible definition.
Thanks Liming >-----Original Message----- >From: Ni, Ruiyu >Sent: Friday, February 03, 2017 4:29 PM >To: Laszlo Ersek <ler...@redhat.com>; Gao, Liming <liming....@intel.com>; >edk2-devel@lists.01.org <edk2-de...@ml01.01.org> >Cc: Fan, Jeff <jeff....@intel.com> >Subject: RE: [edk2] [PATCH 1/5] MdePkg/Pci22.h: Deprecate out-of-Spec >IncompatiblePciDevice macros > >Laszlo, >Sure I will make sure OVMF build is fine with this change. > >Liming, >The three deprecated macros PCI_BAR_EVEN_ALIGN, >PCI_BAR_SQUAD_ALIGN and PCI_BAR_DQUAD_ALIGN don't have >replacement. >If wrapping them with DISABLE_NEW_DEPRECATED_INTERFACES, >MdeModulePkg/Bus/Pci/IncompatiblePciDeviceSupportDxe build will break. >What's your opinion about this driver? > > >Thanks/Ray > >> -----Original Message----- >> From: Laszlo Ersek [mailto:ler...@redhat.com] >> Sent: Friday, February 3, 2017 4:13 PM >> To: Gao, Liming <liming....@intel.com>; Ni, Ruiyu <ruiyu...@intel.com>; >> edk2-devel@lists.01.org <edk2-de...@ml01.01.org> >> Cc: Fan, Jeff <jeff....@intel.com> >> Subject: Re: [edk2] [PATCH 1/5] MdePkg/Pci22.h: Deprecate out-of-Spec >> IncompatiblePciDevice macros >> >> On 02/03/17 04:38, Gao, Liming wrote: >> > Ray: >> > How about wrap them by macro >> DISABLE_NEW_DEPRECATED_INTERFACES to avoid them be used any more? >> >> OvmfPkg uses some of these macros, and also defines >> DISABLE_NEW_DEPRECATED_INTERFACES. So if the above suggestion is >> followed, then a conversion patch for OvmfPkg becomes necessary as first >> step, to the new values. >> >> Thanks >> Laszlo >> >> > >> > Thanks >> > Liming >> >> -----Original Message----- >> >> From: Ni, Ruiyu >> >> Sent: Thursday, January 26, 2017 2:09 PM >> >> To: edk2-devel@lists.01.org >> >> Cc: Gao, Liming <liming....@intel.com>; Fan, Jeff >> >> <jeff....@intel.com> >> >> Subject: [PATCH 1/5] MdePkg/Pci22.h: Deprecate out-of-Spec >> >> IncompatiblePciDevice macros >> >> >> >> DEVICE_ID_NOCARE is defined as 0xFFFF but Spec says (UINT64) -1 >> >> should be used to match any VendorId/DeviceId/RevisionId/ >> >> SubsystemVendorId/SubsystemDeviceId. >> >> >> >> PCI_BAR_OLD_ALIGN/PCI_BAR_EVEN_ALIGN/PCI_BAR_SQUAD_ALIGN/ >> >> PCI_BAR_DQUAD_ALIGN are defined but Spec doesn't have such >> >> definitions. >> >> >> >> PCI_BAR_ALL is defined as 0xFF but Spec says (UINT64) -1 should be >> >> used to match all BARs. >> >> >> >> All of the above macros are marked as deprecated. >> >> >> >> Contributed-under: TianoCore Contribution Agreement 1.0 >> >> Signed-off-by: Ruiyu Ni <ruiyu...@intel.com> >> >> Cc: Liming Gao <liming....@intel.com> >> >> Cc: Jeff Fan <jeff....@intel.com> >> >> --- >> >> MdePkg/Include/IndustryStandard/Pci22.h | 16 ++++++++++------ >> >> 1 file changed, 10 insertions(+), 6 deletions(-) >> >> >> >> diff --git a/MdePkg/Include/IndustryStandard/Pci22.h >> >> b/MdePkg/Include/IndustryStandard/Pci22.h >> >> index 4cf8389..8f87b04 100644 >> >> --- a/MdePkg/Include/IndustryStandard/Pci22.h >> >> +++ b/MdePkg/Include/IndustryStandard/Pci22.h >> >> @@ -780,14 +780,18 @@ typedef struct { >> >> /// >> >> } EFI_PCI_CAPABILITY_HOTPLUG; >> >> >> >> -#define DEVICE_ID_NOCARE 0xFFFF >> >> +/// >> >> +/// Below macros (till PCI_BAR_ALL) were used by >> >> EfiIncompatiblePciDeviceSupport Protocol. >> >> +/// Some of them don't match Spec or are not defined in Spec. Those >> >> +are >> >> marked as deprecated. >> >> +/// >> >> +#define DEVICE_ID_NOCARE 0xFFFF ///< Deprecated. Value doesn't >> >> match Spec. >> >> >> >> #define PCI_ACPI_UNUSED 0 >> >> #define PCI_BAR_NOCHANGE 0 >> >> -#define PCI_BAR_OLD_ALIGN 0xFFFFFFFFFFFFFFFFULL >> >> -#define PCI_BAR_EVEN_ALIGN 0xFFFFFFFFFFFFFFFEULL -#define >> >> PCI_BAR_SQUAD_ALIGN 0xFFFFFFFFFFFFFFFDULL -#define >> >> PCI_BAR_DQUAD_ALIGN 0xFFFFFFFFFFFFFFFCULL >> >> +#define PCI_BAR_OLD_ALIGN 0xFFFFFFFFFFFFFFFFULL ///< >> Deprecated. >> >> Value isn't defined in Spec. >> >> +#define PCI_BAR_EVEN_ALIGN 0xFFFFFFFFFFFFFFFEULL ///< >> Deprecated. >> >> Value isn't defined in Spec. >> >> +#define PCI_BAR_SQUAD_ALIGN 0xFFFFFFFFFFFFFFFDULL ///< >> Deprecated. >> >> Value isn't defined in Spec. >> >> +#define PCI_BAR_DQUAD_ALIGN 0xFFFFFFFFFFFFFFFCULL ///< >> Deprecated. >> >> Value isn't defined in Spec. >> >> >> >> #define PCI_BAR_IDX0 0x00 >> >> #define PCI_BAR_IDX1 0x01 >> >> @@ -795,7 +799,7 @@ typedef struct { >> >> #define PCI_BAR_IDX3 0x03 >> >> #define PCI_BAR_IDX4 0x04 >> >> #define PCI_BAR_IDX5 0x05 >> >> -#define PCI_BAR_ALL 0xFF >> >> +#define PCI_BAR_ALL 0xFF ///< Deprecated. Value doesn't match >> Spec. >> >> >> >> /// >> >> /// EFI PCI Option ROM definitions >> >> -- >> >> 2.9.0.windows.1 >> > >> > _______________________________________________ >> > edk2-devel mailing list >> > edk2-devel@lists.01.org >> > https://lists.01.org/mailman/listinfo/edk2-devel >> > _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel