Implement DT-aware PciHostBridgeDxe.
andreiw opened this issue · 2 comments
andreiw commented
Today FdtBusPkg provides a PciHostBridgeLib (PciHostBridgeLibEcam), for use with MdeModulePkg/Bus/Pci/PciHostBridgeDxe/PciHostBridgeDxe.inf, which is somewhat limited:
- Only one RC node is supported.
- Not driver-binding based.
- No support for non-cache coherent or strange DMA ranges.
andreiw commented
Partially resolved by ec866ed
Uses DT I/O Reg* API to service config space and BAR reads/writes.
- Does NOT use the DT I/O DMA API yet.
- Supports multiple RCs (first segment seen is set up as the PciLib
one for compat... first segment with IO space sets PcdPciIoTranslation). - Does NOT support ResourceAssigned unlike PciHostBridgeDxe
- Is simpler (I think?)
- The ECAM parts will be factored out into a library, so that
the driver may be used with crazy platforms (e.g. Pi 4)