arm64: dts: juno: Describe PCI dma-ranges
authorRobin Murphy <robin.murphy@arm.com>
Fri, 5 Mar 2021 17:33:17 +0000 (17:33 +0000)
committerSudeep Holla <sudeep.holla@arm.com>
Mon, 15 Mar 2021 13:24:09 +0000 (13:24 +0000)
The PLDA root complex on Juno relies on an address-based lookup table to
generate AXI attributes for inbound PCI transactions, and as such will
not pass any transaction not matching any programmed address range. The
standard firmware configuration programs 3 entries covering the GICv2m
MSI doorbell and the 2 DRAM regions, so add a "dma-ranges" property to
describe those usable inbound windows.

Link: https://lore.kernel.org/r/720d0a9a42e33148fcac45cd39a727093a32bf32.1614965598.git.robin.murphy@arm.com
Signed-off-by: Robin Murphy <robin.murphy@arm.com>
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
arch/arm64/boot/dts/arm/juno-base.dtsi

index f6c55877fbd94fd59cdc4832f64fffe5928fb5d5..b48a76b100b1d073a47badde12642a21fbcb3e33 100644 (file)
                ranges = <0x01000000 0x00 0x00000000 0x00 0x5f800000 0x0 0x00800000>,
                         <0x02000000 0x00 0x50000000 0x00 0x50000000 0x0 0x08000000>,
                         <0x42000000 0x40 0x00000000 0x40 0x00000000 0x1 0x00000000>;
+               /* Standard AXI Translation entries as programmed by EDK2 */
+               dma-ranges = <0x02000000 0x0 0x2c1c0000 0x0 0x2c1c0000 0x0 0x00040000>,
+                            <0x02000000 0x0 0x80000000 0x0 0x80000000 0x0 0x80000000>,
+                            <0x43000000 0x8 0x00000000 0x8 0x00000000 0x2 0x00000000>;
                #interrupt-cells = <1>;
                interrupt-map-mask = <0 0 0 7>;
                interrupt-map = <0 0 0 1 &gic 0 GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>,