On 2016-01-06 21:10:55, Ruiyu Ni wrote: > Contributed-under: TianoCore Contribution Agreement 1.0 > Signed-off-by: Ruiyu Ni <[email protected]> > Cc: Jeff Fan <[email protected]> > Cc: Feng Tian <[email protected]> > --- > .../PciHostBridgeLibNull/PciHostBridgeLibNull.c | 104 > +++++++++++++++++++++ > .../PciHostBridgeLibNull/PciHostBridgeLibNull.inf | 36 +++++++ > .../PciHostBridgeLibNull/PciHostBridgeLibNull.uni | Bin 0 -> 1836 bytes
Can you use the BaseTools/Scripts/ConvertUni.py script to convert this to UTF-8? -Jordan > MdeModulePkg/MdeModulePkg.dsc | 3 +- > 4 files changed, 142 insertions(+), 1 deletion(-) > create mode 100644 > MdeModulePkg/Library/PciHostBridgeLibNull/PciHostBridgeLibNull.c > create mode 100644 > MdeModulePkg/Library/PciHostBridgeLibNull/PciHostBridgeLibNull.inf > create mode 100644 > MdeModulePkg/Library/PciHostBridgeLibNull/PciHostBridgeLibNull.uni > > diff --git a/MdeModulePkg/Library/PciHostBridgeLibNull/PciHostBridgeLibNull.c > b/MdeModulePkg/Library/PciHostBridgeLibNull/PciHostBridgeLibNull.c > new file mode 100644 > index 0000000..b70bdb5 > --- /dev/null > +++ b/MdeModulePkg/Library/PciHostBridgeLibNull/PciHostBridgeLibNull.c > @@ -0,0 +1,104 @@ > +/** @file > + Null instance of PCI Host Bridge Library with empty functions. > + > + Copyright (c) 2016, Intel Corporation. All rights reserved.<BR> > + This program and the accompanying materials are > + licensed and made available under the terms and conditions of > + the BSD License which accompanies this distribution. The full > + text of the license may be found at > + http://opensource.org/licenses/bsd-license.php. > + > + THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, > + WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR > IMPLIED. > + > +**/ > +#include <PiDxe.h> > +#include <Library/PciHostBridgeLib.h> > +#include <Library/DebugLib.h> > + > +GLOBAL_REMOVE_IF_UNREFERENCED CHAR16 > *mPciHostBridgeLibAcpiAddressSpaceTypeStr[] = { > + L"Mem", L"I/O", L"Bus" > +}; > + > +/** > + Return all the root bridge instances in an array. > + > + @param Count Return the count of root bridge instances. > + > + @return All the root bridge instances in an array. > + The array should be passed into PciHostBridgeFreeRootBridges() > + when it's not used. > +**/ > +PCI_ROOT_BRIDGE * > +EFIAPI > +PciHostBridgeGetRootBridges ( > + UINTN *Count > + ) > +{ > + *Count = 0; > + return NULL; > +} > + > +/** > + Free the root bridge instances array returned from > PciHostBridgeGetRootBridges(). > + > + @param The root bridge instances array. > + @param The count of the array. > +**/ > +VOID > +EFIAPI > +PciHostBridgeFreeRootBridges ( > + PCI_ROOT_BRIDGE *Bridges, > + UINTN Count > + ) > +{ > + return; > +} > + > +/** > + Inform the platform that the resource conflict happens. > + > + @param HostBridgeHandle Handle of the Host Bridge. > + @param Configuration Pointer to PCI I/O and PCI memory resource > descriptors. > + The Configuration contains the resources for all > the > + root bridges. The resource for each root bridge is > + terminated with END descriptor and an additional > END > + is appended indicating the end of the entire > resources. > + The resource descriptor field values follow the > description > + in > EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL.SubmitResources(). > +**/ > +VOID > +EFIAPI > +PciHostBridgeResourceConflict ( > + EFI_HANDLE HostBridgeHandle, > + VOID *Configuration > + ) > +{ > + EFI_ACPI_ADDRESS_SPACE_DESCRIPTOR *Descriptor; > + UINTN RootBridgeIndex; > + DEBUG ((EFI_D_ERROR, "PciHostBridge: Resource conflict happens!\n")); > + > + RootBridgeIndex = 0; > + Descriptor = (EFI_ACPI_ADDRESS_SPACE_DESCRIPTOR *) Configuration; > + while (Descriptor->Desc == ACPI_ADDRESS_SPACE_DESCRIPTOR) { > + DEBUG ((EFI_D_INFO, "RootBridge[%d]:\n", RootBridgeIndex++)); > + for (; Descriptor->Desc == ACPI_ADDRESS_SPACE_DESCRIPTOR; Descriptor++) { > + ASSERT (Descriptor->ResType < > + sizeof (mPciHostBridgeLibAcpiAddressSpaceTypeStr) / sizeof > (mPciHostBridgeLibAcpiAddressSpaceTypeStr[0]) > + ); > + DEBUG ((EFI_D_ERROR, " %s: Length/Alignment = 0x%lx / 0x%lx\n", > + mPciHostBridgeLibAcpiAddressSpaceTypeStr[Descriptor->ResType], > Descriptor->AddrLen, Descriptor->AddrRangeMax)); > + if (Descriptor->ResType == ACPI_ADDRESS_SPACE_TYPE_MEM) { > + DEBUG ((EFI_D_ERROR, " Granularity/SpecificFlag = %ld / > %02x%s\n", > + Descriptor->AddrSpaceGranularity, Descriptor->SpecificFlag, > + ((Descriptor->SpecificFlag & > EFI_ACPI_MEMORY_RESOURCE_SPECIFIC_FLAG_CACHEABLE_PREFETCHABLE) != 0) ? L" > (Prefetchable)" : L"" > + )); > + } > + } > + // > + // Skip the END descriptor for root bridge > + // > + ASSERT (Descriptor->Desc == ACPI_END_TAG_DESCRIPTOR); > + Descriptor = (EFI_ACPI_ADDRESS_SPACE_DESCRIPTOR *) > ((EFI_ACPI_END_TAG_DESCRIPTOR *) Descriptor + 1); > + } > +} > diff --git > a/MdeModulePkg/Library/PciHostBridgeLibNull/PciHostBridgeLibNull.inf > b/MdeModulePkg/Library/PciHostBridgeLibNull/PciHostBridgeLibNull.inf > new file mode 100644 > index 0000000..6b30211 > --- /dev/null > +++ b/MdeModulePkg/Library/PciHostBridgeLibNull/PciHostBridgeLibNull.inf > @@ -0,0 +1,36 @@ > +## @file > +# Null instance of PCI Host Bridge Library with empty functions. > +# > +# Copyright (c) 2016, Intel Corporation. All rights reserved.<BR> > +# > +# This program and the accompanying materials > +# are licensed and made available under the terms and conditions of the BSD > License > +# which accompanies this distribution. The full text of the license may be > found at > +# http://opensource.org/licenses/bsd-license.php > +# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, > +# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR > IMPLIED. > +# > +# > +## > + > +[Defines] > + INF_VERSION = 0x00010005 > + BASE_NAME = PciHostBridgeLibNull > + MODULE_UNI_FILE = PciHostBridgeLibNull.uni > + FILE_GUID = A19A6C36-7053-4E2C-8BD0-E8286230E473 > + MODULE_TYPE = DXE_DRIVER > + VERSION_STRING = 1.0 > + LIBRARY_CLASS = PciHostBridgeLib > + > +# > +# The following information is for reference only and not required by the > build tools. > +# > +# VALID_ARCHITECTURES = IA32 X64 IPF EBC > +# > + > +[Sources] > + PciHostBridgeLibNull.c > + > +[Packages] > + MdePkg/MdePkg.dec > + MdeModulePkg/MdeModulePkg.dec > diff --git > a/MdeModulePkg/Library/PciHostBridgeLibNull/PciHostBridgeLibNull.uni > b/MdeModulePkg/Library/PciHostBridgeLibNull/PciHostBridgeLibNull.uni > new file mode 100644 > index > 0000000000000000000000000000000000000000..8a06bb720f625b8ce126e41a5092dd75ddfcc0cc > GIT binary patch > literal 1836 > zcmdUvPjAye5XI+=#CKSw7eH+S9C|<qku(M@ppFtpg;Qn6O=`($E5}g!<)Oc~j_neP > z#0h~S@1L33nKy6W=EwJe4b1U9;pgnNEiJdg&g`K*z$)LdeZf+&%I(57R$0QlAja7x > z@y;f8WFhlA_VPO$SxIzeD<AcNb&4h7yTN<SzOr*xXSTL0*0L_Cqr4T~OJAwqqWD+Q > z9D(!-^y+p+N9z3%Jv?T9Zcpu*9ojzYkbWw<6^lAka!O;;cH74@-16LI+h8p@x8W=8 > zD`RGTdkMc&dvy;xF&J{99r;TttbC0%d)-;aEZ%i<2`Cpth=2KRICnw3!y;6wm$NF! > z*0HY})ae4B6d*kaQ<q<-Gar+HHzBTIOc`}fH!N?-x<OLcT6@$DN+DCEbkeAyQCo9v > zWHTF+N9yXZbXc!F7YoK;yUoEMmXxdJOSPn3b)AB<sjGX5x133#^-B=uZ^Z0k`k9xS > zOKCgx-7o2?W<ZFlJG@Fc6*uw1zd32D=2r2g@2=0;lKUC#aKFKlf;_W>9Z#Pu=X@O_ > zF)uU#%>?yC_LgyIAK8a6>EKdxj5S1Gb5?=pcg{b+nDvyHCPT-4h@Jx?W<GPoN;=lq > zV^&^e?J<x1Uc3D}m`?C3Yve0BJ0WW7ksV_X$*LTYuRdib?6Rq5Osry5wT^m2tg3%z > zeve1U_5OlwmAZ?-KDBwe>>*rCP?Ktod1Vc6&FuVt<iOiy)3?`ZrhYp$f2U-M$T25d > zV5cAwUt)F$TQPWk_uJzR^#)eld%~zUBPAS=OGtZk)M)VU{~Pz(-v6v`sb)sUQq-iq > Lsr!2WANsxpGLj(o > > literal 0 > HcmV?d00001 > > diff --git a/MdeModulePkg/MdeModulePkg.dsc b/MdeModulePkg/MdeModulePkg.dsc > index 0e3e5eb..4b093e4 100644 > --- a/MdeModulePkg/MdeModulePkg.dsc > +++ b/MdeModulePkg/MdeModulePkg.dsc > @@ -2,7 +2,7 @@ > # EFI/PI Reference Module Package for All Architectures > # > # (C) Copyright 2014 Hewlett-Packard Development Company, L.P.<BR> > -# Copyright (c) 2007 - 2015, Intel Corporation. All rights reserved.<BR> > +# Copyright (c) 2007 - 2016, Intel Corporation. All rights reserved.<BR> > # > # This program and the accompanying materials > # are licensed and made available under the terms and conditions of the > BSD License > @@ -96,6 +96,7 @@ > > S3BootScriptLib|MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf > > CpuExceptionHandlerLib|MdeModulePkg/Library/CpuExceptionHandlerLibNull/CpuExceptionHandlerLibNull.inf > > PlatformBootManagerLib|MdeModulePkg/Library/PlatformBootManagerLibNull/PlatformBootManagerLibNull.inf > + > PciHostBridgeLib|MdeModulePkg/Library/PciHostBridgeLibNull/PciHostBridgeLibNull.inf > > TpmMeasurementLib|MdeModulePkg/Library/TpmMeasurementLibNull/TpmMeasurementLibNull.inf > > AuthVariableLib|MdeModulePkg/Library/AuthVariableLibNull/AuthVariableLibNull.inf > VarCheckLib|MdeModulePkg/Library/VarCheckLib/VarCheckLib.inf > -- > 2.6.2.windows.1 > > _______________________________________________ > edk2-devel mailing list > [email protected] > https://lists.01.org/mailman/listinfo/edk2-devel _______________________________________________ edk2-devel mailing list [email protected] https://lists.01.org/mailman/listinfo/edk2-devel

