On 3/1/2018 2:57 PM, Heyi Guo wrote:
Patch v5 inherits the code from RFC v4; we don't restart the version number for
RFC to PATCH change.
v5:
- Patch 4/6: Modify the code according to the comments from Ray.
- Patch 1/6 and 2/6 are totally new. They add initialization for all fields of
PCI_ROOT_BRIDGE_APERTURE temporary variables in PciHostBridgeLib instances,
so
that they will not suffer from extension of PCI_ROOT_BRIDGE_APERTURE
structure.
- Generate a separate patch (3/6) for PciHostBridgeLib.h change. Though it is a
prerequisite for patch 4/6, it does not change the code in PciHostBridge
driver and won't cause any build failure or functional issue.
v4:
- Modify the code according to the comments from Ray, Laszlo and Ard (Please see
the notes of Patch 1/3)
- Ignore translation of bus in CreateRootBridge.
v3:
- Keep definition of Translation consistent in EDKII code: Translation = device
address - host address.
- Patch 2/2 is split into 2 patches (2/3 and 3/3).
- Refine comments and commit messages to make the code easier to understand.
v2:
Changs are made according to the discussion on the mailing list, including:
- PciRootBridgeIo->Configuration should return CPU view address, as well as
PciIo->GetBarAttributes, and Translation Offset should be equal to PCI view
address - CPU view address.
- Add translation offset to PCI_ROOT_BRIDGE_APERTURE structure definition.
- PciHostBridge driver internally used Base Address is still based on PCI view
address, and translation offset = CPU view - PCI view, which follows the
definition in ACPI, and not the same as that in UEFI spec.
Cc: Ruiyu Ni <[email protected]>
Cc: Ard Biesheuvel <[email protected]>
Cc: Star Zeng <[email protected]>
Cc: Eric Dong <[email protected]>
Cc: Laszlo Ersek <[email protected]>
Cc: Michael D Kinney <[email protected]>
Cc: Maurice Ma <[email protected]>
Cc: Prince Agyeman <[email protected]>
Cc: Benjamin You <[email protected]>
Cc: Jordan Justen <[email protected]>
Cc: Anthony Perard <[email protected]>
Cc: Julien Grall <[email protected]>
Heyi Guo (6):
CorebootPayloadPkg/PciHostBridgeLib: Init PCI aperture to 0
OvmfPkg/PciHostBridgeLib: Init PCI aperture to 0
MdeModulePkg/PciHostBridgeLib.h: add address Translation
MdeModulePkg/PciHostBridgeDxe: Add support for address translation
MdeModulePkg/PciBus: convert host address to device address
MdeModulePkg/PciBus: return CPU address for GetBarAttributes
MdeModulePkg/Bus/Pci/PciHostBridgeDxe/PciHostBridge.h | 21 ++++
MdeModulePkg/Bus/Pci/PciHostBridgeDxe/PciHostResource.h | 3 +
MdeModulePkg/Include/Library/PciHostBridgeLib.h | 19 +++
CorebootPayloadPkg/Library/PciHostBridgeLib/PciHostBridgeSupport.c | 5 +
MdeModulePkg/Bus/Pci/PciBusDxe/PciIo.c | 12 +-
MdeModulePkg/Bus/Pci/PciHostBridgeDxe/PciHostBridge.c | 129
+++++++++++++++++---
MdeModulePkg/Bus/Pci/PciHostBridgeDxe/PciRootBridgeIo.c | 118
++++++++++++++++--
OvmfPkg/Library/PciHostBridgeLib/PciHostBridgeLib.c | 4 +
OvmfPkg/Library/PciHostBridgeLib/XenSupport.c | 5 +
9 files changed, 288 insertions(+), 28 deletions(-)
Reviewed-by: Ruiyu Ni <[email protected]>
--
Thanks,
Ray
_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.01.org/mailman/listinfo/edk2-devel