overlays: Add pcie-32bit-dma overlay
authorNicolas Saenz Julienne <nsaenzjulienne@suse.de>
Mon, 15 Mar 2021 16:25:02 +0000 (17:25 +0100)
committerPhil Elwell <phil@raspberrypi.com>
Mon, 15 Mar 2021 17:20:45 +0000 (17:20 +0000)
commit16991af20bd821ecba1eae2fe11ddbcafa18f164
tree75d776a138bd304425fa039df064a87e271a09d7
parent4e05f95aa70bdbe661fdc74668b969aac4a48d69
overlays: Add pcie-32bit-dma overlay

In order to accommodate full PCI DMA access to memory on newer BCM2711
revisions, we're forced to map PCIe's view of physical memory with an
offset. This offset makes DMA addressing dependent on having 64bit
support on the PCI device's side. Which isn't always the case.

In order to mitigate this, introduce the pcie-32bit-dma overlay which
will forbid firmware from updating the default inbound memory window.
The default setting, albeit limited to accessing the lower 3GB of
memory, will allow for 32bit DMA addresses at the expense of having to
bounce buffers.

Link: https://github.com/raspberrypi/linux/issues/4197
Signed-off-by: Nicolas Saenz Julienne <nsaenzjulienne@suse.de>
arch/arm/boot/dts/overlays/Makefile
arch/arm/boot/dts/overlays/README
arch/arm/boot/dts/overlays/overlay_map.dts
arch/arm/boot/dts/overlays/pcie-32bit-dma-overlay.dts [new file with mode: 0644]