Hi Nicolas, Am 06.11.19 um 10:59 schrieb Nicolas Saenz Julienne: > arm64 places the CMA in ZONE_DMA32, which is not good enough for the > Raspberry Pi 4 since it contains peripherals that can only address the > first GB of memory. Explicitly place the CMA into that area. > > Signed-off-by: Nicolas Saenz Julienne <nsaenzjulienne@xxxxxxx> > > --- > > Changes since v1: > - Move into bcm2711.dtsi > > arch/arm/boot/dts/bcm2711.dtsi | 20 ++++++++++++++++++++ > 1 file changed, 20 insertions(+) > > diff --git a/arch/arm/boot/dts/bcm2711.dtsi b/arch/arm/boot/dts/bcm2711.dtsi > index 1f3acd3363ea..6000a01652fa 100644 > --- a/arch/arm/boot/dts/bcm2711.dtsi > +++ b/arch/arm/boot/dts/bcm2711.dtsi > @@ -12,6 +12,26 @@ > > interrupt-parent = <&gicv2>; > > + reserved-memory { > + #address-cells = <2>; > + #size-cells = <1>; > + ranges; > + > + /* > + * arm64 reserves the CMA by default somewhere in ZONE_DMA32, > + * that's not good enough for the Raspberry Pi 4 as some sorry for the nitpicking but i hope the Raspberry Pi 4 B wont be the only user of BCM2711. So please s/Raspberry Pi 4/BCM2711/ Beside that: Acked-by: Stefan Wahren <wahrenst@xxxxxxx> > + * devices can only address the lower 1G of memory (ZONE_DMA). > + */ > + linux,cma { > + compatible = "shared-dma-pool"; > + size = <0x2000000>; /* 32MB */ > + alloc-ranges = <0x0 0x00000000 0x40000000>; > + reusable; > + linux,cma-default; > + }; > + }; > + > + > soc { > /* > * Defined ranges: