From nobody Wed Dec 25 13:11:36 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; spf=none (zoho.com: 198.145.21.10 is neither permitted nor denied by domain of lists.01.org) smtp.mailfrom=edk2-devel-bounces@lists.01.org Return-Path: Received: from ml01.01.org (ml01.01.org [198.145.21.10]) by mx.zohomail.com with SMTPS id 1509087287203210.30370909982696; Thu, 26 Oct 2017 23:54:47 -0700 (PDT) Received: from [127.0.0.1] (localhost [IPv6:::1]) by ml01.01.org (Postfix) with ESMTP id 1BED22034A892; Thu, 26 Oct 2017 23:50:58 -0700 (PDT) Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 713AB2034A889 for ; Thu, 26 Oct 2017 23:50:56 -0700 (PDT) Received: from orsmga003.jf.intel.com ([10.7.209.27]) by fmsmga101.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 26 Oct 2017 23:54:42 -0700 Received: from ray-dev.ccr.corp.intel.com ([10.239.9.7]) by orsmga003.jf.intel.com with ESMTP; 26 Oct 2017 23:54:41 -0700 X-Original-To: edk2-devel@lists.01.org Received-SPF: none (zoho.com: 198.145.21.10 is neither permitted nor denied by domain of lists.01.org) client-ip=198.145.21.10; envelope-from=edk2-devel-bounces@lists.01.org; helo=ml01.01.org; Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=192.55.52.88; helo=mga01.intel.com; envelope-from=ruiyu.ni@intel.com; receiver=edk2-devel@lists.01.org X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.44,303,1505804400"; d="scan'208";a="1030015300" From: Ruiyu Ni To: edk2-devel@lists.01.org Date: Fri, 27 Oct 2017 14:54:36 +0800 Message-Id: <20171027065438.284440-2-ruiyu.ni@intel.com> X-Mailer: git-send-email 2.12.2.windows.2 In-Reply-To: <20171027065438.284440-1-ruiyu.ni@intel.com> References: <20171027065438.284440-1-ruiyu.ni@intel.com> Subject: [edk2] [PATCH 1/3] MdeModulePkg/PciBus: Refine EFI_PCI_ROM_IMAGE_MAPPING X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.22 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Star Zeng MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Errors-To: edk2-devel-bounces@lists.01.org Sender: "edk2-devel" X-ZohoMail: RSF_4 Z_629925259 SPT_0 Content-Type: text/plain; charset="utf-8" The patch doesn't impact real functionality. It only renames EFI_PCI_ROM_IMAGE_MAPPING to PCI_ROM_IMAGE, and changes prototype of PciRomAddImageMapping so that no explicit type cast is needed when calling this function. It also removes unused field RomBase from PCI_IO_DEVICE structure. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Ruiyu Ni Cc: Star Zeng --- MdeModulePkg/Bus/Pci/PciBusDxe/PciBus.h | 7 +-- MdeModulePkg/Bus/Pci/PciBusDxe/PciDeviceSupport.c | 4 +- .../Bus/Pci/PciBusDxe/PciOptionRomSupport.c | 4 +- MdeModulePkg/Bus/Pci/PciBusDxe/PciRomTable.c | 55 ++++++++++--------= ---- MdeModulePkg/Bus/Pci/PciBusDxe/PciRomTable.h | 10 ++-- 5 files changed, 35 insertions(+), 45 deletions(-) diff --git a/MdeModulePkg/Bus/Pci/PciBusDxe/PciBus.h b/MdeModulePkg/Bus/Pci= /PciBusDxe/PciBus.h index 3bcc134d0b..55eb3a5a80 100644 --- a/MdeModulePkg/Bus/Pci/PciBusDxe/PciBus.h +++ b/MdeModulePkg/Bus/Pci/PciBusDxe/PciBus.h @@ -1,7 +1,7 @@ /** @file Header files and data structures needed by PCI Bus module. =20 -Copyright (c) 2006 - 2015, Intel Corporation. All rights reserved.
+Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.
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 @@ -240,11 +240,6 @@ struct _PCI_IO_DEVICE { UINT64 RomSize; =20 // - // The OptionRom Size - // - UINT64 RomBase; - - // // TRUE if all OpROM (in device or in platform specific position) have b= een processed // BOOLEAN AllOpRomProcessed; diff --git a/MdeModulePkg/Bus/Pci/PciBusDxe/PciDeviceSupport.c b/MdeModuleP= kg/Bus/Pci/PciBusDxe/PciDeviceSupport.c index 359b9ded6d..97bb971a59 100644 --- a/MdeModulePkg/Bus/Pci/PciBusDxe/PciDeviceSupport.c +++ b/MdeModulePkg/Bus/Pci/PciBusDxe/PciDeviceSupport.c @@ -282,7 +282,7 @@ RegisterPciDevice ( PciIoDevice->BusNumber, PciIoDevice->DeviceNumber, PciIoDevice->FunctionNumber, - (UINT64) (UINTN) PciIoDevice->PciIo.RomImage, + PciIoDevice->PciIo.RomImage, PciIoDevice->PciIo.RomSize ); } @@ -308,7 +308,7 @@ RegisterPciDevice ( PciIoDevice->BusNumber, PciIoDevice->DeviceNumber, PciIoDevice->FunctionNumber, - (UINT64) (UINTN) PciIoDevice->PciIo.RomImage, + PciIoDevice->PciIo.RomImage, PciIoDevice->PciIo.RomSize ); } =20 diff --git a/MdeModulePkg/Bus/Pci/PciBusDxe/PciOptionRomSupport.c b/MdeModu= lePkg/Bus/Pci/PciBusDxe/PciOptionRomSupport.c index 3713c07844..4382d79c2d 100644 --- a/MdeModulePkg/Bus/Pci/PciBusDxe/PciOptionRomSupport.c +++ b/MdeModulePkg/Bus/Pci/PciBusDxe/PciOptionRomSupport.c @@ -551,7 +551,7 @@ LoadOpRomImage ( PciDevice->BusNumber, PciDevice->DeviceNumber, PciDevice->FunctionNumber, - (UINT64) (UINTN) PciDevice->PciIo.RomImage, + PciDevice->PciIo.RomImage, PciDevice->PciIo.RomSize ); =20 @@ -766,7 +766,7 @@ ProcessOpRomImage ( PciDevice->BusNumber, PciDevice->DeviceNumber, PciDevice->FunctionNumber, - (UINT64) (UINTN) PciDevice->PciIo.RomImage, + PciDevice->PciIo.RomImage, PciDevice->PciIo.RomSize ); RetStatus =3D EFI_SUCCESS; diff --git a/MdeModulePkg/Bus/Pci/PciBusDxe/PciRomTable.c b/MdeModulePkg/Bu= s/Pci/PciBusDxe/PciRomTable.c index f48c3a0c59..0eef41739c 100644 --- a/MdeModulePkg/Bus/Pci/PciBusDxe/PciRomTable.c +++ b/MdeModulePkg/Bus/Pci/PciBusDxe/PciRomTable.c @@ -1,7 +1,7 @@ /** @file Set up ROM Table for PCI Bus module. =20 -Copyright (c) 2006 - 2009, Intel Corporation. All rights reserved.
+Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.
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 @@ -23,13 +23,13 @@ typedef struct { UINT8 Bus; UINT8 Dev; UINT8 Func; - UINT64 RomAddress; - UINT64 RomLength; -} EFI_PCI_ROM_IMAGE_MAPPING; + VOID *RomImage; + UINT64 RomSize; +} PCI_ROM_IMAGE; =20 -UINTN mNumberOfPciRomImages =3D 0; -UINTN mMaxNumberOfPciRomImages =3D 0; -EFI_PCI_ROM_IMAGE_MAPPING *mRomImageTable =3D NULL; +UINTN mNumberOfPciRomImages =3D 0; +UINTN mMaxNumberOfPciRomImages =3D 0; +PCI_ROM_IMAGE *mRomImageTable =3D NULL; =20 /** Add the Rom Image to internal database for later PCI light enumeration. @@ -39,9 +39,8 @@ EFI_PCI_ROM_IMAGE_MAPPING *mRomImageTable =3D = NULL; @param Bus Bus NO of PCI space. @param Dev Dev NO of PCI space. @param Func Func NO of PCI space. - @param RomAddress Base address of OptionRom. - @param RomLength Length of rom image. - + @param RomImage Option Rom buffer. + @param RomSize Size of Option Rom buffer. **/ VOID PciRomAddImageMapping ( @@ -50,29 +49,25 @@ PciRomAddImageMapping ( IN UINT8 Bus, IN UINT8 Dev, IN UINT8 Func, - IN UINT64 RomAddress, - IN UINT64 RomLength + IN VOID *RomImage, + IN UINT64 RomSize ) { - EFI_PCI_ROM_IMAGE_MAPPING *TempMapping; - - if (mNumberOfPciRomImages >=3D mMaxNumberOfPciRomImages) { + PCI_ROM_IMAGE *NewTable; =20 - mMaxNumberOfPciRomImages +=3D 0x20; + if (mNumberOfPciRomImages =3D=3D mMaxNumberOfPciRomImages) { =20 - TempMapping =3D NULL; - TempMapping =3D AllocatePool (mMaxNumberOfPciRomImages * sizeof (EFI_P= CI_ROM_IMAGE_MAPPING)); - if (TempMapping =3D=3D NULL) { + NewTable =3D ReallocatePool ( + mMaxNumberOfPciRomImages * sizeof (PCI_ROM_IMAGE), + (mMaxNumberOfPciRomImages + 0x20) * sizeof (PCI_ROM_IMAGE= ), + mRomImageTable + ); + if (NewTable =3D=3D NULL) { return ; } =20 - CopyMem (TempMapping, mRomImageTable, mNumberOfPciRomImages * sizeof (= EFI_PCI_ROM_IMAGE_MAPPING)); - - if (mRomImageTable !=3D NULL) { - FreePool (mRomImageTable); - } - - mRomImageTable =3D TempMapping; + mRomImageTable =3D NewTable; + mMaxNumberOfPciRomImages +=3D 0x20; } =20 mRomImageTable[mNumberOfPciRomImages].ImageHandle =3D ImageHandle; @@ -80,8 +75,8 @@ PciRomAddImageMapping ( mRomImageTable[mNumberOfPciRomImages].Bus =3D Bus; mRomImageTable[mNumberOfPciRomImages].Dev =3D Dev; mRomImageTable[mNumberOfPciRomImages].Func =3D Func; - mRomImageTable[mNumberOfPciRomImages].RomAddress =3D RomAddress; - mRomImageTable[mNumberOfPciRomImages].RomLength =3D RomLength; + mRomImageTable[mNumberOfPciRomImages].RomImage =3D RomImage; + mRomImageTable[mNumberOfPciRomImages].RomSize =3D RomSize; mNumberOfPciRomImages++; } =20 @@ -116,8 +111,8 @@ PciRomGetImageMapping ( if (mRomImageTable[Index].ImageHandle !=3D NULL) { AddDriver (PciIoDevice, mRomImageTable[Index].ImageHandle); } else { - PciIoDevice->PciIo.RomImage =3D (VOID *) (UINTN) mRomImageTable[In= dex].RomAddress; - PciIoDevice->PciIo.RomSize =3D (UINTN) mRomImageTable[Index].RomL= ength; + PciIoDevice->PciIo.RomImage =3D mRomImageTable[Index].RomImage; + PciIoDevice->PciIo.RomSize =3D mRomImageTable[Index].RomSize; } } } diff --git a/MdeModulePkg/Bus/Pci/PciBusDxe/PciRomTable.h b/MdeModulePkg/Bu= s/Pci/PciBusDxe/PciRomTable.h index d443f83336..a7a1ed4ce3 100644 --- a/MdeModulePkg/Bus/Pci/PciBusDxe/PciRomTable.h +++ b/MdeModulePkg/Bus/Pci/PciBusDxe/PciRomTable.h @@ -1,7 +1,7 @@ /** @file Set up ROM Table for PCI Bus module. =20 -Copyright (c) 2006 - 2009, Intel Corporation. All rights reserved.
+Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.
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 @@ -23,8 +23,8 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER= EXPRESS OR IMPLIED. @param Bus Bus NO of PCI space. @param Dev Dev NO of PCI space. @param Func Func NO of PCI space. - @param RomAddress Base address of OptionRom. - @param RomLength Length of rom image. + @param RomImage Option ROM buffer. + @param RomSize Size of Option ROM buffer. =20 **/ VOID @@ -34,8 +34,8 @@ PciRomAddImageMapping ( IN UINT8 Bus, IN UINT8 Dev, IN UINT8 Func, - IN UINT64 RomAddress, - IN UINT64 RomLength + IN VOID *RomImage, + IN UINT64 RomSize ); =20 /** --=20 2.12.2.windows.2 _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel