From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wm0-x22e.google.com (mail-wm0-x22e.google.com [IPv6:2a00:1450:400c:c09::22e]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 90E7E1A1DF8 for ; Sun, 21 Aug 2016 23:35:57 -0700 (PDT) Received: by mail-wm0-x22e.google.com with SMTP id q128so106403543wma.1 for ; Sun, 21 Aug 2016 23:35:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id; bh=qTF5FAw+f7/Ig9KkTQXedzh0Td8joK0vQ/W/Y7Vmx80=; b=Cme5EyPRzL5st6SrCnkYjbxWf/W+R23bc7w4YUsXjn5dBwzyl9h1CwS0Q7qQxWqIWh Ykn4Xk40BVL8HKeqMiKGnSvViUNrL+pOOEbrPzKKRYmbBkRclemoTfsZiChWhn8dvBn1 ZGQm0uaUCyVAtBya63Za+BmFGLPNBKaKN5pv8= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=qTF5FAw+f7/Ig9KkTQXedzh0Td8joK0vQ/W/Y7Vmx80=; b=mqYfzsm/0/xxbEUW0uZffauI7nmxKFhR9z3Zx8kffl7xQU134sX+nH6KzV1wCVdqVx d0cqo2Yq8MCVxR0HhxzkpNbuu6B0pmEMwr0LfhGvzvAdNG9s/fBTUPvimAeQZGjJRov3 zQzjf1QyytAjckvTivJ73H+Z+0cekecykr+XoHwSA9ZJOxhMLBs2Rz6yJc4K6SqoTCzQ VT1CNU1iw/iUK7Z3DBntJH8H4oT5EYoBgvC1zFzE0O/jSzV1ToQ18ZIzqm6FRL1wcZ9R n5F1CggmRupfTDZmzSDPwF5eS4pXIe3Ui83RpAhUT80qe7m3N2biObbbS5laQ0fos0w2 59Aw== X-Gm-Message-State: AEkooutO6wltY0uNVs3aPSgCJJbQQQDOaeef1hitMWkgUfRRXBjyvJbOiKy4aOhbuAjg8pws X-Received: by 10.28.54.229 with SMTP id y98mr14169508wmh.96.1471847755561; Sun, 21 Aug 2016 23:35:55 -0700 (PDT) Received: from localhost.localdomain (2.178.14.62.static.jazztel.es. [62.14.178.2]) by smtp.gmail.com with ESMTPSA id ex14sm21947778wjc.30.2016.08.21.23.35.54 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Sun, 21 Aug 2016 23:35:54 -0700 (PDT) From: Ard Biesheuvel To: edk2-devel@lists.01.org, lersek@redhat.com Cc: Ard Biesheuvel Date: Mon, 22 Aug 2016 08:35:47 +0200 Message-Id: <1471847752-26574-1-git-send-email-ard.biesheuvel@linaro.org> X-Mailer: git-send-email 2.7.4 Subject: [PATCH 0/5] ArmVirtQemu: move to generic PciHostBridgeDxe X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 22 Aug 2016 06:35:58 -0000 Now that Laszlo's virtio-gpu-pci have removed the last remaining obstacle, we can get rid of the special PciHostBridgeDxe implementation in ArmVirtPkg, and move to the generic one. This will allow us to perform DMA above 4GB without bounce buffering, and use 64-bit MMIO BARs. Patch #1 removes the linux,pci-probe-only override which does more harm than good now that we switched to virtio-gp-pci, which does not expose a raw framebuffer. Patch #2 implements PciHostBridgeLib for platforms exposing a PCI host bridge using a pci-host-ecam-generic DT node. Patch #3 switches to the generic PciHostBridgeDxe, with no change in functionality other than support for DMA above 4 GB without bounce buffering. Patch #4 adds support for 64-bit MMIO BARs Patch #5 removes the now obsolete PciHostBridgeDxe from ArmVirPkg. Ard Biesheuvel (5): ArmVirtPkg/PciHostBridgeDxe: don't set linux,pci-probe-only DT property ArmVirtPkg: implement FdtPciHostBridgeLib ArmVirtPkg/ArmVirtQemu: switch to generic PciHostBridgeDxe ArmVirtPkg/FdtPciHostBridgeLib: add MMIO64 support ArmVirtPkg: remove now unused PciHostBridgeDxe ArmVirtPkg/ArmVirtQemu.dsc | 7 +- ArmVirtPkg/ArmVirtQemuFvMain.fdf.inc | 3 +- ArmVirtPkg/ArmVirtQemuKernel.dsc | 7 +- ArmVirtPkg/Library/FdtPciHostBridgeLib/FdtPciHostBridgeLib.c | 417 ++++ ArmVirtPkg/Library/FdtPciHostBridgeLib/FdtPciHostBridgeLib.inf | 56 + ArmVirtPkg/PciHostBridgeDxe/PciHostBridge.c | 1496 -------------- ArmVirtPkg/PciHostBridgeDxe/PciHostBridge.h | 499 ----- ArmVirtPkg/PciHostBridgeDxe/PciHostBridgeDxe.inf | 64 - ArmVirtPkg/PciHostBridgeDxe/PciRootBridgeIo.c | 2144 -------------------- 9 files changed, 487 insertions(+), 4206 deletions(-) create mode 100644 ArmVirtPkg/Library/FdtPciHostBridgeLib/FdtPciHostBridgeLib.c create mode 100644 ArmVirtPkg/Library/FdtPciHostBridgeLib/FdtPciHostBridgeLib.inf delete mode 100644 ArmVirtPkg/PciHostBridgeDxe/PciHostBridge.c delete mode 100644 ArmVirtPkg/PciHostBridgeDxe/PciHostBridge.h delete mode 100644 ArmVirtPkg/PciHostBridgeDxe/PciHostBridgeDxe.inf delete mode 100644 ArmVirtPkg/PciHostBridgeDxe/PciRootBridgeIo.c -- 2.7.4