]> 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)
commitc70502c14ad1d732e1429ddc2c4a2466008f23bf
treed819743252c2f0f036184f37570e7ded4616baa4
parentd4d18ea48bf05e1487380de5e169e6f6d0d4440e
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