Skip to content
  • Nicolas Saenz Julienne's avatar
    ARM: dts: bcm2711: fix soc's node dma-ranges · 0634a2dc
    Nicolas Saenz Julienne authored and Florian Fainelli's avatar Florian Fainelli committed
    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: 7dbe8c62
    
     ("ARM: dts: Add minimal Raspberry Pi 4 support")
    Signed-off-by: default avatarNicolas Saenz Julienne <nsaenzjulienne@suse.de>
    Reviewed-by: default avatarPhil Elwell <phil@raspberrypi.org>
    Signed-off-by: default avatarFlorian Fainelli <f.fainelli@gmail.com>
    0634a2dc