[edk2-devel] [edk2-platforms][PATCH 0/4] Platform/RPi4: Add PCIe and xHCI support

Pete Batard posted 4 patches 4 years, 11 months ago
Failed in applying to current master (apply log)
There is a newer version of this series
Platform/RaspberryPi/RPi4/RPi4.dsc                                                            |   29 +-
Platform/RaspberryPi/RPi4/RPi4.fdf                                                            |   10 +-
Platform/RaspberryPi/RPi4/Readme.md                                                           |   23 +-
Silicon/Broadcom/Bcm27xx/Bcm27xx.dec                                                          |    4 +
Silicon/Broadcom/Bcm27xx/Include/IndustryStandard/Bcm2711.h                                   |   71 +
Silicon/Broadcom/Bcm27xx/Library/Bcm2711PciHostBridgeLib/Bcm2711PciHostBridgeLib.c            |  193 +++
Silicon/Broadcom/Bcm27xx/Library/Bcm2711PciHostBridgeLib/Bcm2711PciHostBridgeLib.inf          |   51 +
Silicon/Broadcom/Bcm27xx/Library/Bcm2711PciHostBridgeLib/Bcm2711PciHostBridgeLibConstructor.c |  235 ++++
Silicon/Broadcom/Bcm27xx/Library/Bcm2711PciSegmentLib/PciSegmentLib.c                         | 1432 ++++++++++++++++++++
Silicon/Broadcom/Bcm27xx/Library/Bcm2711PciSegmentLib/PciSegmentLib.inf                       |   34 +
10 files changed, 2064 insertions(+), 18 deletions(-)
create mode 100644 Silicon/Broadcom/Bcm27xx/Library/Bcm2711PciHostBridgeLib/Bcm2711PciHostBridgeLib.c
create mode 100644 Silicon/Broadcom/Bcm27xx/Library/Bcm2711PciHostBridgeLib/Bcm2711PciHostBridgeLib.inf
create mode 100644 Silicon/Broadcom/Bcm27xx/Library/Bcm2711PciHostBridgeLib/Bcm2711PciHostBridgeLibConstructor.c
create mode 100644 Silicon/Broadcom/Bcm27xx/Library/Bcm2711PciSegmentLib/PciSegmentLib.c
create mode 100644 Silicon/Broadcom/Bcm27xx/Library/Bcm2711PciSegmentLib/PciSegmentLib.inf
[edk2-devel] [edk2-platforms][PATCH 0/4] Platform/RPi4: Add PCIe and xHCI support
Posted by Pete Batard 4 years, 11 months ago
The following patch series adds xHCI support for the Broadcom 2711 SoC used
on the Raspberry Pi 4 by:

* Adding the relevant constants to the Silicon header files

* Adding the segment library required to handle the nonstandrd ECAM that the
  SoC uses. Basically, in the Bcm2711, root port is the first bytes of the
  register space (offset 0) and individual devices are selected by computing
  their BDF index and writing that into the CFG_INDEX register before ECAM
  data can then be read/written at CFG_DATA.

* Adding the Host Bridge Library

* Adding PCIe and xHCI support into the platform using the recently introduced
  NonCoherentIoMmuDxe.

Once this series has been applied, the 4 USB ports of the platform can be used
within the UEFI environment.

Jeremy Linton (4):
  Silicon/Bcm27xx: Add PCIe constants to Bcm2711.h
  Silicon/Bcm27xx: Add segment library to handle nonstandard ECAM
  Silicon/Bcm27xx: Add PCIe host bridge config library
  Platform/RPi4: Build the PCIe and xHCI drivers into the firmware

 Platform/RaspberryPi/RPi4/RPi4.dsc                                                            |   29 +-
 Platform/RaspberryPi/RPi4/RPi4.fdf                                                            |   10 +-
 Platform/RaspberryPi/RPi4/Readme.md                                                           |   23 +-
 Silicon/Broadcom/Bcm27xx/Bcm27xx.dec                                                          |    4 +
 Silicon/Broadcom/Bcm27xx/Include/IndustryStandard/Bcm2711.h                                   |   71 +
 Silicon/Broadcom/Bcm27xx/Library/Bcm2711PciHostBridgeLib/Bcm2711PciHostBridgeLib.c            |  193 +++
 Silicon/Broadcom/Bcm27xx/Library/Bcm2711PciHostBridgeLib/Bcm2711PciHostBridgeLib.inf          |   51 +
 Silicon/Broadcom/Bcm27xx/Library/Bcm2711PciHostBridgeLib/Bcm2711PciHostBridgeLibConstructor.c |  235 ++++
 Silicon/Broadcom/Bcm27xx/Library/Bcm2711PciSegmentLib/PciSegmentLib.c                         | 1432 ++++++++++++++++++++
 Silicon/Broadcom/Bcm27xx/Library/Bcm2711PciSegmentLib/PciSegmentLib.inf                       |   34 +
 10 files changed, 2064 insertions(+), 18 deletions(-)
 create mode 100644 Silicon/Broadcom/Bcm27xx/Library/Bcm2711PciHostBridgeLib/Bcm2711PciHostBridgeLib.c
 create mode 100644 Silicon/Broadcom/Bcm27xx/Library/Bcm2711PciHostBridgeLib/Bcm2711PciHostBridgeLib.inf
 create mode 100644 Silicon/Broadcom/Bcm27xx/Library/Bcm2711PciHostBridgeLib/Bcm2711PciHostBridgeLibConstructor.c
 create mode 100644 Silicon/Broadcom/Bcm27xx/Library/Bcm2711PciSegmentLib/PciSegmentLib.c
 create mode 100644 Silicon/Broadcom/Bcm27xx/Library/Bcm2711PciSegmentLib/PciSegmentLib.inf

-- 
2.21.0.windows.1


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#52160): https://edk2.groups.io/g/devel/message/52160
Mute This Topic: https://groups.io/mt/68271361/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-