Message ID | 20191106095945.22933-2-nsaenzjulienne@suse.de (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | arm64: Fix CMA/crashkernel reservation | expand |
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@suse.de> > > --- > > 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@gmx.net> > + * 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:
On Thu, 2019-11-07 at 07:23 +0100, Stefan Wahren wrote: > 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@suse.de> > > > > --- > > > > 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. No worries :) It's better that way anyway. > > So please s/Raspberry Pi 4/BCM2711/ > > Beside that: > > Acked-by: Stefan Wahren <wahrenst@gmx.net> Thanks! > > > + * 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: > > _______________________________________________ > linux-arm-kernel mailing list > linux-arm-kernel@lists.infradead.org > http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
On Wed, 6 Nov 2019 10:59:44 +0100, Nicolas Saenz Julienne <nsaenzjulienne@suse.de> wrote: > 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@suse.de> > > --- Applied to devicetree/next, thanks! -- Florian
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 + * 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:
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@suse.de> --- Changes since v1: - Move into bcm2711.dtsi arch/arm/boot/dts/bcm2711.dtsi | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+)