public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: Laszlo Ersek <lersek@redhat.com>
To: Ard Biesheuvel <ard.biesheuvel@linaro.org>,
	edk2-devel-01 <edk2-devel@ml01.01.org>
Subject: Re: [PATCH 3/5] ArmVirtPkg/ArmVirtQemu: switch to generic PciHostBridgeDxe
Date: Wed, 31 Aug 2016 14:24:52 +0200	[thread overview]
Message-ID: <2938ba69-d39b-3456-2555-d9ccf147d209@redhat.com> (raw)
In-Reply-To: <CAKv+Gu8RfBuJ012poOhtOov_m00-zp0oab-MX2awaMbzWjXrjA@mail.gmail.com>

On 08/23/16 20:04, Ard Biesheuvel wrote:
> On 22 August 2016 at 08:35, Ard Biesheuvel <ard.biesheuvel@linaro.org> wrote:
>> Wire up the FdtPciHostBridgeLib introduced in the previous patch
>> to the generic PciHostBridgeDxe implementation, and drop the special
>> ArmVirtPkg version. The former's dependency on gEfiCpuIo2ProtocolGuid
>> is satisfied by adding ArmPciCpuIo2Dxe.inf as well, and adding the PCD
>> gArmTokenSpaceGuid.PcdPciIoTranslation as a dynamic PCD.
>>
>> In terms of functionality, the only effect this change should have is
>> that we will no longer use bounce buffers for DMA above 4 GB. Other
>> than that, no functional changes are intended.
>>
>> Contributed-under: TianoCore Contribution Agreement 1.0
>> Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
>> ---
>>  ArmVirtPkg/ArmVirtQemu.dsc                                   | 7 ++++++-
>>  ArmVirtPkg/ArmVirtQemuFvMain.fdf.inc                         | 3 ++-
>>  ArmVirtPkg/ArmVirtQemuKernel.dsc                             | 7 ++++++-
>>  ArmVirtPkg/Library/FdtPciHostBridgeLib/FdtPciHostBridgeLib.c | 4 ++--
>>  4 files changed, 16 insertions(+), 5 deletions(-)
>>
>> diff --git a/ArmVirtPkg/ArmVirtQemu.dsc b/ArmVirtPkg/ArmVirtQemu.dsc
>> index 1d459756f61b..ddc72e7044f7 100644
>> --- a/ArmVirtPkg/ArmVirtQemu.dsc
>> +++ b/ArmVirtPkg/ArmVirtQemu.dsc
>> @@ -69,6 +69,8 @@ [LibraryClasses.common]
>>    QemuBootOrderLib|OvmfPkg/Library/QemuBootOrderLib/QemuBootOrderLib.inf
>>    FileExplorerLib|MdeModulePkg/Library/FileExplorerLib/FileExplorerLib.inf
>>    PciPcdProducerLib|ArmVirtPkg/Library/FdtPciPcdProducerLib/FdtPciPcdProducerLib.inf
>> +  PciSegmentLib|MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf
>> +  PciHostBridgeLib|ArmVirtPkg/Library/FdtPciHostBridgeLib/FdtPciHostBridgeLib.inf
>>
>>  [LibraryClasses.common.UEFI_DRIVER]
>>    UefiScsiLib|MdePkg/Library/UefiScsiLib/UefiScsiLib.inf
>> @@ -210,6 +212,8 @@ [PcdsDynamicDefault.common]
>>    # PCD and PcdPciDisableBusEnumeration above have not been assigned yet
>>    gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0xFFFFFFFFFFFFFFFF
>>
>> +  gArmTokenSpaceGuid.PcdPciIoTranslation|0x0
>> +
>>    #
>>    # Set video resolution for boot options and for text setup.
>>    # PlatformDxe can set the former at runtime.
>> @@ -363,7 +367,8 @@ [Components.common]
>>    #
>>    # PCI support
>>    #
>> -  ArmVirtPkg/PciHostBridgeDxe/PciHostBridgeDxe.inf
>> +  ArmPkg/Drivers/ArmPciCpuIo2Dxe/ArmPciCpuIo2Dxe.inf
>> +  MdeModulePkg/Bus/Pci/PciHostBridgeDxe/PciHostBridgeDxe.inf
>>    MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf {
>>      <LibraryClasses>
>>        NULL|ArmVirtPkg/Library/FdtPciPcdProducerLib/FdtPciPcdProducerLib.inf
>> diff --git a/ArmVirtPkg/ArmVirtQemuFvMain.fdf.inc b/ArmVirtPkg/ArmVirtQemuFvMain.fdf.inc
>> index 01e650d9e333..c56188f347ec 100644
>> --- a/ArmVirtPkg/ArmVirtQemuFvMain.fdf.inc
>> +++ b/ArmVirtPkg/ArmVirtQemuFvMain.fdf.inc
>> @@ -151,7 +151,8 @@ [FV.FvMain]
>>    #
>>    # PCI support
>>    #
>> -  INF ArmVirtPkg/PciHostBridgeDxe/PciHostBridgeDxe.inf
>> +  INF ArmPkg/Drivers/ArmPciCpuIo2Dxe/ArmPciCpuIo2Dxe.inf
>> +  INF MdeModulePkg/Bus/Pci/PciHostBridgeDxe/PciHostBridgeDxe.inf
>>    INF MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf
>>    INF OvmfPkg/VirtioPciDeviceDxe/VirtioPciDeviceDxe.inf
>>    INF OvmfPkg/Virtio10Dxe/Virtio10.inf
>> diff --git a/ArmVirtPkg/ArmVirtQemuKernel.dsc b/ArmVirtPkg/ArmVirtQemuKernel.dsc
>> index 99d2feba202b..305aa5bacb32 100644
>> --- a/ArmVirtPkg/ArmVirtQemuKernel.dsc
>> +++ b/ArmVirtPkg/ArmVirtQemuKernel.dsc
>> @@ -71,6 +71,8 @@ [LibraryClasses.common]
>>    QemuBootOrderLib|OvmfPkg/Library/QemuBootOrderLib/QemuBootOrderLib.inf
>>    FileExplorerLib|MdeModulePkg/Library/FileExplorerLib/FileExplorerLib.inf
>>    PciPcdProducerLib|ArmVirtPkg/Library/FdtPciPcdProducerLib/FdtPciPcdProducerLib.inf
>> +  PciSegmentLib|MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf
>> +  PciHostBridgeLib|ArmVirtPkg/Library/FdtPciHostBridgeLib/FdtPciHostBridgeLib.inf
>>
>>  [LibraryClasses.common.UEFI_DRIVER]
>>    UefiScsiLib|MdePkg/Library/UefiScsiLib/UefiScsiLib.inf
>> @@ -203,6 +205,8 @@ [PcdsDynamicDefault.common]
>>    # PCD and PcdPciDisableBusEnumeration above have not been assigned yet
>>    gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0xFFFFFFFFFFFFFFFF
>>
>> +  gArmTokenSpaceGuid.PcdPciIoTranslation|0x0
>> +
>>    #
>>    # Set video resolution for boot options and for text setup.
>>    # PlatformDxe can set the former at runtime.
>> @@ -349,7 +353,8 @@ [Components.common]
>>    #
>>    # PCI support
>>    #
>> -  ArmVirtPkg/PciHostBridgeDxe/PciHostBridgeDxe.inf
>> +  ArmPkg/Drivers/ArmPciCpuIo2Dxe/ArmPciCpuIo2Dxe.inf
>> +  MdeModulePkg/Bus/Pci/PciHostBridgeDxe/PciHostBridgeDxe.inf
>>    MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf {
>>      <LibraryClasses>
>>        NULL|ArmVirtPkg/Library/FdtPciPcdProducerLib/FdtPciPcdProducerLib.inf
>> diff --git a/ArmVirtPkg/Library/FdtPciHostBridgeLib/FdtPciHostBridgeLib.c b/ArmVirtPkg/Library/FdtPciHostBridgeLib/FdtPciHostBridgeLib.c
>> index 887ddb01f586..0aff149e8029 100644
>> --- a/ArmVirtPkg/Library/FdtPciHostBridgeLib/FdtPciHostBridgeLib.c
>> +++ b/ArmVirtPkg/Library/FdtPciHostBridgeLib/FdtPciHostBridgeLib.c
>> @@ -304,8 +304,8 @@ PciHostBridgeGetRootBridges (
>>    RootBridge->Io.Limit              = IoBase + IoSize - 1;
>>    RootBridge->Mem.Base              = Mmio32Base;
>>    RootBridge->Mem.Limit             = Mmio32Base + Mmio32Size - 1;
>> -  RootBridge->MemAbove4G.Base       = 0x100000000ULL;
>> -  RootBridge->MemAbove4G.Limit      = 0xFFFFFFFF;
>> +  RootBridge->MemAbove4G.Base       = MAX_UINT64;
>> +  RootBridge->MemAbove4G.Limit      = 0;
>>
> 
> This hunk was intended as a fixup for the previous patch, but I
> accidentally folded it here instead.

With that fixed up, for this patch:

Reviewed-by: Laszlo Ersek <lersek@redhat.com>



  reply	other threads:[~2016-08-31 12:24 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-08-22  6:35 [PATCH 0/5] ArmVirtQemu: move to generic PciHostBridgeDxe Ard Biesheuvel
2016-08-22  6:35 ` [PATCH 1/5] ArmVirtPkg/PciHostBridgeDxe: don't set linux, pci-probe-only DT property Ard Biesheuvel
2016-08-23 21:23   ` Laszlo Ersek
2016-08-24  5:30     ` Ard Biesheuvel
2016-08-22  6:35 ` [PATCH 2/5] ArmVirtPkg: implement FdtPciHostBridgeLib Ard Biesheuvel
2016-08-24 15:01   ` Laszlo Ersek
2016-08-24 15:19     ` Ard Biesheuvel
2016-08-31 13:51       ` Laszlo Ersek
2016-08-31 13:54         ` Ard Biesheuvel
2016-08-22  6:35 ` [PATCH 3/5] ArmVirtPkg/ArmVirtQemu: switch to generic PciHostBridgeDxe Ard Biesheuvel
2016-08-23 18:04   ` Ard Biesheuvel
2016-08-31 12:24     ` Laszlo Ersek [this message]
2016-08-22  6:35 ` [PATCH 4/5] ArmVirtPkg/FdtPciHostBridgeLib: add MMIO64 support Ard Biesheuvel
2016-08-31 14:06   ` Laszlo Ersek
2016-08-22  6:35 ` [PATCH 5/5] ArmVirtPkg: remove now unused PciHostBridgeDxe Ard Biesheuvel
2016-08-31 14:11   ` Laszlo Ersek
2016-08-22 11:58 ` [PATCH 0/5] ArmVirtQemu: move to generic PciHostBridgeDxe Laszlo Ersek

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-list from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=2938ba69-d39b-3456-2555-d9ccf147d209@redhat.com \
    --to=devel@edk2.groups.io \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox