]> git.proxmox.com Git - mirror_edk2.git/commitdiff
MdeModulePkg/Bus/Pci/PciBusDxe: Support platform PCI ROM override
authorMichael D Kinney <michael.d.kinney@intel.com>
Sat, 22 Jan 2022 00:48:47 +0000 (16:48 -0800)
committermergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Fri, 4 Feb 2022 18:10:25 +0000 (18:10 +0000)
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3811

Remove ASSERT() statements that are triggered if a platform provides
an override of PCI ROM attached to a PCI Controller.  The PCI Platform
Protocol allows the platform to provide a PCI ROM image for a PCI
Controller.  This works for PCI Controllers that do not have an attached
PCI ROM, but the platform is not allowed to replace the PCI ROM for a
PCI Controller that has its own PCI ROM.  Removing these ASSERT()
statements enables this additional use case.

Cc: Hao A Wu <hao.a.wu@intel.com>
Cc: Ray Ni <ray.ni@intel.com>
Cc: Star Zeng <star.zeng@intel.com>
Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com>
Reviewed-by: Star Zeng <star.zeng@intel.com>
Reviewed-by: Ray Ni <ray.ni@intel.com>
Acked-by: Ard Biesheuvel <ardb@kernel.org>
MdeModulePkg/Bus/Pci/PciBusDxe/PciRomTable.c

index 5535bd3013b89796327eccbe72ea1893f4e0f3bf..cb845ec2b186769956ed386b054fd57de04a9a4f 100644 (file)
@@ -58,10 +58,9 @@ PciRomAddImageMapping (
     {\r
       //\r
       // Expect once RomImage and RomSize are recorded, they will be passed in\r
-      // later when updating ImageHandle\r
+      // later when updating ImageHandle. They may also be updated with new\r
+      // values if the platform provides an override of RomImage and RomSize.\r
       //\r
-      ASSERT ((mRomImageTable[Index].RomImage == NULL) || (RomImage == mRomImageTable[Index].RomImage));\r
-      ASSERT ((mRomImageTable[Index].RomSize  == 0) || (RomSize  == mRomImageTable[Index].RomSize));\r
       break;\r
     }\r
   }\r