]> git.baikalelectronics.ru Git - kernel.git/commit
drm/pl111: Enable device-specific assigned memory
authorLinus Walleij <linus.walleij@linaro.org>
Wed, 2 May 2018 13:47:19 +0000 (15:47 +0200)
committerLinus Walleij <linus.walleij@linaro.org>
Wed, 2 May 2018 17:13:42 +0000 (19:13 +0200)
commitaf37a4fdd67fc4235c8e79f09c98e68af3655b32
treed819743252c2f0f036184f37570e7ded4616baa4
parentd7df0da3693af8856686ca5bdf8f30ca42a6ebee
drm/pl111: Enable device-specific assigned memory

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: Eric Anholt <eric@anholt.net>
Tested-by: Robin Murphy <robin.murphy@arm.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20180502134719.8388-2-linus.walleij@linaro.org
drivers/gpu/drm/pl111/pl111_drm.h
drivers/gpu/drm/pl111/pl111_drv.c