On 01/09/18 06:53, Ruiyu Ni wrote: > EBC compiler doesn't treat EFI_xxx as constant due to these macros > are UINT64 type in 64bit env and UINT32 type in 32bit env. > So it reports error when "case EFI_xxx" is used. > The patch changes to use if-else to fix EBC build failure. > > Contributed-under: TianoCore Contribution Agreement 1.1 > Signed-off-by: Ruiyu Ni <[email protected]> > Cc: Laszlo Ersek <[email protected]> > --- > MdeModulePkg/Bus/Pci/PciBusDxe/PciLib.c | 20 +++++++------------- > 1 file changed, 7 insertions(+), 13 deletions(-) > > diff --git a/MdeModulePkg/Bus/Pci/PciBusDxe/PciLib.c > b/MdeModulePkg/Bus/Pci/PciBusDxe/PciLib.c > index dc1086606f..976496379a 100644 > --- a/MdeModulePkg/Bus/Pci/PciBusDxe/PciLib.c > +++ b/MdeModulePkg/Bus/Pci/PciBusDxe/PciLib.c > @@ -1154,19 +1154,13 @@ PciScanBus ( > > FreePool (Descriptors); > > - switch (Status) { > - case EFI_SUCCESS: > - BusPadding = TRUE; > - break; > - > - case EFI_NOT_FOUND: > - // > - // no bus number padding requested > - // > - break; > - > - default: > - return Status; > + if (!EFI_ERROR (Status)) { > + BusPadding = TRUE; > + } else if (Status != EFI_NOT_FOUND) { > + // > + // EFI_NOT_FOUND is not a real error. It indicates no bus > number padding requested. > + // > + return Status; > } > } > } >
Reviewed-by: Laszlo Ersek <[email protected]> _______________________________________________ edk2-devel mailing list [email protected] https://lists.01.org/mailman/listinfo/edk2-devel

