OSDN Git Service

ARM: dts: bcm2711: fix soc's node dma-ranges
authorNicolas Saenz Julienne <nsaenzjulienne@suse.de>
Wed, 4 Dec 2019 12:56:33 +0000 (13:56 +0100)
committerFlorian Fainelli <f.fainelli@gmail.com>
Mon, 9 Dec 2019 18:14:43 +0000 (10:14 -0800)
commit0634a2dc9566de977970c78a06c7ea15cd9c890f
treef988f91f6d62f28c1ee8343740793a76e34c4a47
parent093c3f94e922d83a734fc4da08cc5814990f32c6
ARM: dts: bcm2711: fix soc's node dma-ranges

Raspberry Pi's firmware has a feature to select how much memory to
reserve for its GPU called 'gpu_mem'. The possible values go from 16MB
to 944MB, with a default of 64MB. This memory resides in the topmost
part of the lower 1GB memory area and grows bigger expanding towards the
begging of memory.

It turns out that with low 'gpu_mem' values (16MB and 32MB) the size of
the memory available to the system in the lower 1GB area can outgrow the
interconnect's dma-range as its size was selected based on the maximum
system memory available given the default gpu_mem configuration. This
makes that memory slice unavailable for DMA. And may cause nasty kernel
warnings if CMA happens to include it.

Change soc's dma-ranges to really reflect it's HW limitation, which is
being able to only DMA to the lower 1GB area.

Fixes: 7dbe8c62ceeb ("ARM: dts: Add minimal Raspberry Pi 4 support")
Signed-off-by: Nicolas Saenz Julienne <nsaenzjulienne@suse.de>
Reviewed-by: Phil Elwell <phil@raspberrypi.org>
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
arch/arm/boot/dts/bcm2711.dtsi