• Linus Walleij's avatar
    drm/pl111: Enable device-specific assigned memory · 57450671
    Linus Walleij authored
    The Versatile Express has 8 MB of dedicated video RAM (VRAM)
    on the motherboard, which is what we should be using for the
    PL111 if available. On this platform, the memory backplane
    is constructed so that only this memory will work properly
    with the CLCD on the motherboard, using any other memory
    area just gives random snow on the display.
    
    The CA9 Versatile Express also has a PL111 instance on its
    core tile that can address all memory, and this does not
    have the restriction.
    
    The memory is assigned to the device using the memory-region
    device tree property and a "shared-dma-pool" reserved
    memory pool like this:
    
    reserved-memory {
            #address-cells = <1>;
            #size-cells = <1>;
            ranges;
    
            vram: vram@48000000 {
                    compatible = "shared-dma-pool";
                    reg = <0x48000000 0x00800000>;
                    no-map;
            };
    };
    
    clcd@1f000 {
            compatible = "arm,pl111", "arm,primecell";
    	(...)
            memory-region = <&vram>;
    }·;
    
    Cc: Liviu Dudau <liviu.dudau@arm.com>
    Cc: Mali DP Maintainers <malidp@foss.arm.com>
    Reviewed-by: default avatarEric Anholt <eric@anholt.net>
    Tested-by: default avatarRobin Murphy <robin.murphy@arm.com>
    Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
    Link: https://patchwork.freedesktop.org/patch/msgid/20180502134719.8388-2-linus.walleij@linaro.org
    57450671
pl111_drv.c 10.7 KB