From: "Pete Batard" <pete@akeo.ie>
To: devel@edk2.groups.io
Cc: ard.biesheuvel@linaro.org, leif.lindholm@linaro.org,
philmd@redhat.com, lintonrjeremy@gmail.com
Subject: [edk2-platforms][PATCH 0/4] Platform/RPi4: Add PCIe and xHCI support
Date: Thu, 12 Dec 2019 10:54:58 +0000 [thread overview]
Message-ID: <20191212105502.8492-1-pete@akeo.ie> (raw)
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
next reply other threads:[~2019-12-12 10:55 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-12-12 10:54 Pete Batard [this message]
2019-12-12 10:54 ` [edk2-platforms][PATCH 1/4] Silicon/Bcm27xx: Add PCIe constants to Bcm2711.h Pete Batard
2019-12-12 10:55 ` [edk2-platforms][PATCH 2/4] Silicon/Bcm27xx: Add segment library to handle nonstandard ECAM Pete Batard
2019-12-12 13:35 ` Ard Biesheuvel
2019-12-12 22:15 ` Jeremy Linton
2019-12-12 10:55 ` [edk2-platforms][PATCH 3/4] Silicon/Bcm27xx: Add PCIe host bridge config library Pete Batard
2019-12-12 10:55 ` [edk2-platforms][PATCH 4/4] Platform/RPi4: Build the PCIe and xHCI drivers into the firmware Pete Batard
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=20191212105502.8492-1-pete@akeo.ie \
--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